home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 22 / Cream of the Crop 22.iso / editor / sshtml10.zip / HTML.TXT < prev    next >
Text File  |  1996-09-20  |  120KB  |  3,475 lines

  1.                                    
  2.                            Servile Software
  3.                              Guide To HTML
  4.                               Edition 1.0
  5.  
  6.                       Compiled by Matthew Probert
  7.  
  8.  
  9.  
  10.  
  11.                                    
  12.                               Disclaimer
  13.  
  14. This document is supplied in good faith, however no responsibility can
  15. be accepted for the accuracy of the information contained herein or
  16. any loss or damage resulting from any advice given or implied by the
  17. author.
  18.  
  19. This document mentions several HTML viewers and companies by name,
  20. this is not intended as an endorsment of any company or product.
  21.  
  22. All trademarks are recognised as belonging to their respective owners.
  23.  
  24.  
  25.                                    
  26.                              Introduction
  27.  
  28.  
  29. First people communicated ideas through hand signals and voice, then
  30. drawings on cave walls then through hand painted manuscripts and later
  31. printed paper books and leaflets. With the advent of the computer came
  32. the facility to publish documents not on paper, but electronicaly
  33. instead. The computer screen displaying the document, rather than it
  34. being laid out on a leaf of paper.
  35.  
  36. Publishing information electronicaly requires some medium to present
  37. the information to the reader. A graphics viewer is used to access
  38. pictures, for example. An HTML viewer (or web browser as they are
  39. commonly known) is a program which presents electronic documents, in
  40. HTML format, to the reader.
  41.  
  42. The HyperText Mark-up Language (HTML) is a simple data format used to
  43. create formatted electronic documents with hyperlinks to other
  44. documents and resources (this hyperlinking to other documents is known
  45. as hypertext) that are portable from one computer platform to another.
  46. That is, an HTML document created on a PC may also be read by a user
  47. of a UNIX machine or an Atari, Macintosh and so on. The term "mark-up"
  48. is a printing expression describing the process of putting together
  49. words and picture to form a document. HTML, is used electronically to
  50. put together words (text) and pictures (images) into a finished
  51. presentation document. Recent inovations mean that video clips and
  52. sound can also be added,  making HTML a full multimedia publishing
  53. medium.
  54.  
  55. You will probably be familiar with the idea of formatted documents,
  56. these are produced by word processors. A formatted document has a
  57. variation in its appearance. It looks pretty. Where as an unformatted
  58. document has all the text in one style. Links to other documents and
  59. resources may be a newer idea for you.
  60.  
  61. A standard formatted document simply conveys information, and may
  62. suggest other sources of information to the reader. A hypertext
  63. document does the same, but where a suggestion of other information is
  64. made a provision is made for the reader to click the mouse button or
  65. press a keyboard button and the program being used to view the
  66. hypertext document will load and display the linked document.
  67.  
  68. For example, this is a formatted text document that you are reading.
  69. If I wish to refer you to another document, titled "order.doc" to view
  70. that document you need to select the file option from your viewer
  71. software, and open the named file. With a hypertext document, you
  72. could simply point the mouse to the words "order.doc" which would be
  73. displayed in a different colour, and click the mouse button to ask the
  74. viewer software to load and display the document. Of course as the
  75. author of the document, I would have to include some instruction to
  76. the viewer software that would enable you to do that. These
  77. instructions form part of the HTML language. They are called
  78. "hyperlinks" and provide a path to other documents or resources,
  79. called Uniform Resource Locations, or URLs for short.
  80.  
  81. HTML documents are viewed with an HTML viewer, or "web browser" as
  82. they are starting to be known in PC circles. The most common HTML
  83. viewers used by PC users are Microsoft's Internet Explorer and
  84. Netscape's Navigator. But there are others. Mosaic, by NCSA is
  85. available in a number of custom Internet packages including Quarter-
  86. deck's Internet connectivity package and is perhaps the next most
  87. widely used. What is less well known is that all HTML viewers present
  88. HTML documents slightly differently. Although HTML is specified, HTML
  89. viewers do not pay too much attention to the official specifications
  90. and manufacturers have added support (both documented and not!) for a
  91. variety of additional features and commands including built-in Java
  92. compilers to understand Java code and support for Frames.
  93.  
  94. If you are publishing your document for a known audience, you should
  95. know which HTML viewer will be used to access the document, and you
  96. should be aware of the facilities supported by that viewer. When
  97. publishing for the World Wide Web you should remember that your
  98. audience is comprised of millions of people, with dozens of different
  99. HTML viewers, which whilst supporting basic features, have many
  100. discrepancies in their support of advanced features. Some may not even
  101. have the ability to display images. So while this e-text describes and
  102. illustrates many features found only in one or two HTML viewers, it
  103. should not be viewed as a recommendation to use these features for
  104. general HTML publishing.
  105.                                    
  106.                             Basic Concepts
  107.  
  108. As with any aspect of computing, HTML introduces some new concepts and
  109. jargon. It is necessary to be familiar with these basic terms in order
  110. to understand the rest of this document.
  111.  
  112. Tags:
  113. Tags provide instructions to an HTML viewer about elements such as
  114. headings, paragraphs, lists, character highlighting, and hyperlinks.
  115. Most HTML elements are identified in a document as a start-tag
  116. followed by an end tag. The start-tag provides the HTML viewer with
  117. the element name and attributes, followed by the content. The end-tag
  118. tells the HTML viewer about the end of the element. Start-tags are
  119. delimited by `<'and `>'; end tags are delimited by `</' and `>'.
  120.  
  121. For example:
  122.  
  123.  <H1>This is a Heading</H1>
  124.  
  125. In the above example the start-tag is <H1> and the end-tag is </H1>
  126.  
  127. Comments:
  128. To include comments in an HTML document, use a comment declaration. A
  129. comment declaration consists of `<!' followed by zero or more comments
  130. followed by `>'. Each comment starts with `_`and includes all text up
  131. to and including the next occurrence of `_`. In a comment declaration,
  132. white space is allowed after each comment, but not before the first
  133. comment. The entire comment declaration is ignored.
  134.  
  135. For example:
  136.  
  137.  <!-- This is a comment -->
  138.  <!-- This is a multiple-line
  139.  comment -->
  140.  
  141.  
  142. Head:
  143. The head of an HTML document, defined by the start-tag <HEAD> and
  144. delimited by the end-tag </HEAD>, is where heading information about
  145. the document goes. The heading information is an unordered collection
  146. of information about the document, such as the title of the document.
  147.  
  148. For example:
  149.  
  150.  <HEAD>
  151.  <TITLE>Document Title</TITLE>
  152.  </HEAD>
  153.  
  154. This example declares the document title to the HTML viewer as
  155. "Document Title".
  156.  
  157. The title element contains your document title and identifies its
  158. content in a global context. The title is displayed somewhere on the
  159. HTML viewer window (usually at the top), but not within the document
  160. area. The title is also used for bookmarking and during a WAIS search
  161. of a server and should be less than 64 characters long.
  162.  
  163.  
  164. Title:
  165. Every HTML document must contain a TITLE element. The title should
  166. identify the contents of the document in a global context. A short
  167. title, such as "Introduction" may be meaningless out of context. A
  168. title such as "Introduction to HTML Elements" is more appropriate. An
  169. HTML viewer may display the title of a document in a history list or
  170. as a label for the window displaying the document.
  171.  
  172. Body:
  173. The BODY section of an HTML document is where the text to be displayed
  174. is placed. This is the largest section of an HTML document, and is
  175. defined by the start-tag <BODY> and terminated by the end-tag </BODY>
  176.  
  177. For example:
  178.  
  179.  <BODY>
  180.  This is displayed in the HTML viewer text window
  181.  </BODY>
  182.  
  183.  
  184.  
  185. Headings:
  186. Headings are generally displayed in a larger type-face (or font) than
  187. the main text. HTML provides two systems for declaring a heading.
  188.  
  189. The old system, which is recognised by all HTML viewers, supports six
  190. sizes of text declared by the start-tags <H1>, <H2>, <H3>, <H4>, <H5>
  191. and <H6>, each of which has a corresponding end-tag such as </H1>,
  192. </H2> and so on. The text sizes range from <H1> the biggest, through
  193. <H3> the default size to <H6> the smallest.
  194.  
  195. For example:
  196.  
  197.  <H1>This is a large heading</H1>
  198.  <H3>This is in the normal default size</H3>
  199.  <H6>This is very small!</H6>
  200.  
  201.  
  202. Paragraphs:
  203. Unlike most word processors, HTML viewers ignore carriage returns, and
  204. additionally multiple spaces are reduced to a single space. The
  205. paragraph command (<P> and </P>) tells the HTML viewer that the text
  206. contained within the start-tag and end-tag is a paragraph. Paragraphs
  207. are displayed by the HTML viewer separated by a single blank line from
  208. the preceding items.
  209.  
  210. For example:
  211.  
  212.  <P>
  213.  This is a paragraph.
  214.  This second line is actually displayed by an HTML viewer on the same
  215.  line as the previous line, as the carriage return is ignored.
  216.  </P>
  217.  <P>
  218.  This second paragraph is displayed with a single blank line between
  219.  it and the previous paragraph.
  220.  </P>
  221.  
  222. This results in the following to be displayed by an HTML viewer:
  223.  
  224.  This is a paragraph. This second line is actually displayed by an
  225.  HTML viewer on the same line as the previous line, as the carriage
  226.  return is ignored.
  227.  This second paragraph is displayed with a single blank line between
  228.  it and the previous paragraph.
  229.  
  230.  
  231. Alignment:
  232. Text and images may be aligned to the left, to the right or centred.
  233.  
  234. For example:
  235.  
  236. Left alignment
  237.                                                        Right alignment
  238.                            Center alignment
  239.  
  240.  
  241. Lists:
  242. A list is simply a list of items. The HTML viewer automatically starts
  243. each list item on a new line, and handles list numbering and bulleting
  244. depending upon how the HTML author has declared the list.
  245.  
  246.  
  247. Base URL:
  248. The Base URL gives the HTML viewer a point of reference for
  249. hyperlinks. Usually the base URL is not specified, and is taken as the
  250. URL address of the current document.
  251.  
  252.  
  253. Hyperlinks:
  254. Hyperlinks are a provision allowing the user of the HTML document to
  255. navigate through the document and to external resources. Hyperlinks
  256. may be local, allowing navigation within the currently loaded
  257. document, or external providing access to other documents not loaded
  258. and resources such as ftp servers and mail servers. Navigation through
  259. hyperlinks usually occurs by positioning the pointer over the link
  260. with the mouse, and then pressing the left mouse button. The hyperlink
  261. may be displayed to the user either as text, in which case it will
  262. normally be displayed in a distinctive colour and underlined, or as an
  263. image. In both cases, when the pointer passes onto a hyperlink it will
  264. change shape indicating a selectable hyperlink.
  265.  
  266.  
  267. Meta:
  268. The META element is an extensible container for use in identifying
  269. specialized document meta-information. Meta-information has two main
  270. functions:
  271.  
  272. 1) to provide a means to discover that the data set exists and how it
  273. might be obtained or accessed; and
  274. 2) to document the content, quality, and features of a data set,
  275. indicating its fitness for use.
  276.  
  277. Each META element specifies a name/value pair. If multiple META
  278. elements are provided with the same name, their combined contents -
  279. concatenated as a comma-separated list - is the value associated with
  280. that name.
  281.  
  282. HTTP servers may read the content of the document HEAD to generate
  283. header fields from certain Meta information. WWW Search Engines also
  284. may make use of META information to automatically build an entry for a
  285. site.
  286.  
  287.  
  288. Forms:
  289. Forms provide a mechanism for passing information from the HTML viewer
  290. back to a program at the web server or through email to you.
  291.                                    
  292.                          A Basic HTML Document
  293.  
  294. A simple HTML document is comprised of the following components:
  295.  
  296.  An HTML declaration tag: <HTML>
  297.  A heading tag: <HEAD>
  298.  A title, such as: <TITLE>Title text</TITLE>
  299.  A body declaration tag: <BODY>
  300.  The main body of the document.
  301.  A body termination tag </BODY> and finally an HTML termination tag:
  302.  </HTML>
  303.  
  304. For example:
  305.  
  306.  <HTML>
  307.  <HEAD>
  308.  <TITLE>Example HTML Document</TITLE>
  309.  <BODY>
  310.  This is an example HTML document.
  311.  </BODY>
  312.  </HTML>
  313.  
  314.  
  315. Adding Headings:
  316. Headings can be added to an HTML document with the heading tags;
  317. <H1> through <H6>.
  318. An example HTML document using a heading:
  319.  
  320.  <HTML>
  321.  <HEAD>
  322.  <TITLE>Example HTML Document</TITLE>
  323.  <BODY>
  324.  <H1>Main Heading</H1>
  325.  <P>
  326.  This is an example HTML document.
  327.  </P>
  328.  </BODY>
  329.  
  330. Notice the use of the paragraph start-tag <P> and end-tag </P> which
  331. tells the HTML viewer to display the text as a new paragraph, and not
  332. as a continuation of the heading line. Newer HTML viewers, such as
  333. Netscape Navigator and Microsoft Internet Explorer aslo support more
  334. advanced formatting for headings and other text, but this will be
  335. covered later.
  336.                                    
  337.                            Simple Formatting
  338.  
  339. HTML viewers do not recognise carriage-returns in the text. Instead,
  340. they display the text as continuous lines, breaking each line at a
  341. word end so that it fits in the text window. This is known as word-
  342. wrap. You can force a line break with the HTML tag <BR>.
  343.  
  344. For example:
  345.  
  346.  This is line one<BR>This is line two
  347.  
  348. Which displays as:
  349.  
  350.  This is line one
  351.  This is line two
  352.  
  353. Blank lines can be inserted by using multiple occurrences of the <BR>
  354. tag, thus:
  355.  
  356.  This is line one<BR><BR>This is line two
  357.  
  358. Which displays as:
  359.  
  360.  This is line one
  361.  This is line two
  362.  
  363. When text flows around a figure or table in the margin, you sometimes
  364. want to start an element like a header, paragraph or list below the
  365. figure rather than alongside it. The CLEAR command allows you to move
  366. down unconditionally:
  367.  
  368.  CLEAR=LEFT     move down until left margin is clear
  369.  CLEAR=RIGHT    move down until right margin is clear
  370.  CLEAR=ALL move down until both margins are clear
  371.  
  372. Alternatively, you can decide to place the element alongside the
  373. figure just so long as there is enough room. The minimum width needed
  374. is specified as:
  375.  
  376.  CLEAR="100 pixels"  move down until there is at least 100 pixels
  377.  free
  378.  
  379. For example:
  380.  
  381.  <BR CLEAR=LEFT>
  382.  
  383. Centring a line of text is also easy. The HTML tag <CENTER> causes all
  384. subsequent text and images to be displayed in the centre of the text
  385. window until a </CENTER> end-tag is reached.
  386.  
  387. For example:
  388.  
  389.  <HTML>
  390.  <HEAD>
  391.  <TITLE>Example HTML Document</TITLE>
  392.  <BODY>
  393.  <CENTER>
  394.  <H1>Main Heading</H1>
  395.  </CENTER>
  396.  <P>
  397.  This is an example HTML document.
  398.  </P>
  399.  </BODY>
  400.  
  401. If you just want to centre a single heading, you can use the "align="
  402. command within the heading tag, for example:
  403.  
  404.  <H1 align=center>
  405.  
  406. The example HTML document would then look like this:
  407.  
  408.  <HTML>
  409.  <HEAD>
  410.  <TITLE>Example HTML Document</TITLE>
  411.  <BODY>
  412.  <H1 align=center>Main Heading</H1>
  413.  <P>
  414.  This is an example HTML document.
  415.  </P>
  416.  </BODY>
  417.  
  418. This will display as:
  419.  
  420.  Main Heading
  421.  This is an example HTML document.
  422.  
  423. The ALIGN= command may also be added to the paragraph tag, <P> to
  424. align an entire paragraph, for example:
  425.  
  426.  <P ALIGN=CENTER>
  427.  
  428. In addition to defining the size of the typeface used to display text
  429. (heading), HTML also supports bold, italic, strikethrough, underline,
  430. subscript and superscript formats. The following example illustrates
  431. the popular formatting tags:
  432.  
  433.  
  434.  <HTML>
  435.  <HEAD>
  436.  <TITLE>Example HTML Document</TITLE>
  437.  <BODY>
  438.  <H1 align=center>Main Heading</H1>
  439.  <P>
  440.  This is an example HTML document illustrating some basic text
  441.  formatting tags.
  442.  <P>
  443.  <B>Bold</B>
  444.  <P>
  445.  <I>Italic</I>
  446.  <P>
  447.  <SUB>Subscript</SUB>
  448.  <P>
  449.  <U>Underline</U>
  450.  <P>
  451.  <SUP>Superscript</SUP>
  452.  <P>
  453.  <STRIKE>Strikeout</STRIKE>
  454.  <P>
  455.  <TT>Typewriter (fixed width font)</TT>
  456.  <P>
  457.  <PRE>Preformatted (used for displaying source code etc.)</PRE>
  458.  </BODY>
  459.  
  460. Formatting tags may also be nested to create multiple effects such as
  461. BOLD ITALIC, for example:
  462.  
  463.  <B><I>This is Bold Italic</I></B>
  464.  
  465. But you must remember to end-tag in the reverse order to the start-
  466. tags to keep the nesting correct.
  467.  
  468. Blockquote:
  469. Text defined as a "blockquote" is displayed as a new paragraph, and
  470. usually displayed indented from the left margin, and with some HTML
  471. viewers in a unique typeface. A blockquote is declared by the tag pair
  472. <BLOCKQUOTE> and </BLOCKQUOTE>, for example:
  473.  
  474.  <BLOCKQUOTE>
  475.  This text will normally be displayed indented, and if viewed with
  476.  Mosaic, displayed in a unique font type face.
  477.  </BLOCKQUOTE>
  478.  
  479.  
  480. Address:
  481. Text defined as an "address block" is displayed as a new paragraph and
  482. usually in italic. An address  is declared by the tag pair <ADDRESS >
  483. and </ADDRESS >, for example:
  484.  
  485.  <ADDRESS>
  486.  This text will normally be displayed in italic.
  487.  </ADDRESS>
  488.  
  489.  
  490. Emphasis:
  491. Emphasised text is declared by the tag pair <EM> and </EM> and is
  492. usually displayed in italic.
  493.  
  494.  
  495.  
  496. Strong:
  497. Strong text is declared by the tag pair <STRONG> and </STRONG> and is
  498. usually displayed in bold.
  499.  
  500.  
  501. Citation:
  502. Citation text is declared by the tag pair <CITE> and </CITE> and is
  503. usually displayed in italic.
  504.  
  505.  
  506. Source Code:
  507. Source code is declared by the tag pair <CODE> and </CODE> and is
  508. usually displayed in a fixed width font, though this may be changed by
  509. the user of the HTML viewer.
  510.  
  511.  
  512. Sample Output:
  513. Sample Output is declared by the tag pair <SAMP> and </SAMP> and is
  514. usually displayed in a fixed width font, though some HTML viewers
  515. (notably Mosaic) allow the user to change this.
  516.  
  517.  
  518. Keyboard Input:
  519. "Keyboard Input" is declared by the tag pair <KBD> and </KBD> and is
  520. usually displayed in a different font face and style to the ordinary
  521. text.
  522.  
  523.  
  524. Variable:
  525. Variable text is declared by the tag pair <VAR> and </VAR> and is
  526. usually displayed in either a fixed width font or an italic font to
  527. emphasis it.
  528.  
  529.  
  530. Big:
  531. Big text is declared by the tag pair <BIG> and </BIG> and is usually
  532. displayed larger than the ordinary text, but without the new line
  533. which accompanies a heading <Hn> tag.
  534.  
  535.  
  536. Small:
  537. Small text is declared by the tag pair <SMALL> and </SMALL> and is
  538. usually displayed smaller than the ordinary text, but without the new
  539. line which accompanies a heading <Hn> tag.
  540.                                    
  541.                                Dividers
  542.  
  543. HTML provides three basic ways of dividing a document window:
  544. Paragraphs, Line Breaks, and Horizontal Rules.
  545. Paragraphs are contained within a <P> and </P> tag pair, although the
  546. end-tag </P> is not needed if another paragraph starts with a <P>
  547. start-tag. Paragraphs may be aligned, with the "align=" command, for
  548. example:
  549.  
  550.  <P>
  551.  A standard paragraph
  552.  
  553.  <P align=center>
  554.  Center aligned paragraph
  555.  
  556.  <P align=left>
  557.  Left aligned paragraph
  558.  
  559.  <P align=right>
  560.  Right aligned paragraph
  561.  
  562.  
  563. Line breaks are enforced with the <BR> tag. When an HTML viewer
  564. encounters the <BR> tag, the cursor is moved down one line and to the
  565. left of the window. If an alignment is in operation, the next
  566. displayed line will be aligned correctly.
  567.  
  568. Horizontal rules are affected with the <HR> tag. This tells the HTML
  569. viewer to display a graphical horizontal line across the entire width
  570. of the window. The form of the rule can be amended with the optional
  571. "size=", "width=", "noshade" and "align=" parameters.
  572.  
  573. The vertical thickness of the horizontal rule can be defined by adding
  574. a size= parameter to the <HR> tag. The number following the size=
  575. parameter tells the HTML viewer how many vertical pixel lines to use
  576. for the rule. For example:
  577.  
  578.  <HR size=4>
  579.  
  580. By default, a horizontal rule extends the entire width of the window.
  581. The width= parameter may be used to specify the horizontal width of
  582. the rule either in pixels, or as a percentage of the window width:
  583.  
  584.  <HR width=100>
  585.  <HR width=50%>
  586.  
  587. Horizontal rules are usually aligned in the centre of the window, or
  588. if an alignment is in force, they follow the rules of the current
  589. alignment. This may be overridden by the align= parameter, for
  590. example:
  591.  
  592.  <HR align=left>
  593.  <HR align=center>
  594.  <HR align=right>
  595.  
  596. Finally, horizontal rules are displayed in a 3d representation. This
  597. can be changed to a solid thick 2 dimensional line with the noshade
  598. parameter:
  599.  
  600.  <HR noshade>
  601.  
  602. As usual, these parameters can be mixed together, for example:
  603.  
  604.  <HR align=right width=50% size=10 noshade>
  605.                                    
  606.                                 Images
  607.  
  608. Most newer HTML viewers can display pictures, called images, in
  609. various forms.  The most popular being GIF and JPEG formats. The
  610. procedure for telling the HTML viewer to display the image is the same
  611. regardless of the image format:
  612.  
  613.  <img src="imagename">
  614.  
  615. For example:
  616.  
  617.  <img src="picture.gif">
  618.  
  619. Will cause the HTML viewer to display the image "picture.gif".
  620.  
  621. Some HTML viewers cannot display images, so you can provide text which
  622. will be displayed by these viewers instead of the image by including
  623. it with the "alt=" parameter, for example:
  624.  
  625.  <img src="picture.gif" alt="Picture of a tree">
  626.  
  627. The image may be aligned in relation to the surrounding text using the
  628. optional "align=" parameter. If no alignment parameter is specified,
  629. text following the image will be displayed at the bottom right of the
  630. image. Different HTML viewers handle the alignment of text and images
  631. differently, so be careful!
  632.  
  633. The size of the image can be declared to the HTML viewer with the
  634. optional "width=" and "height=" parameters. If these are not
  635. specified, the HTML viewer will display the image at its full size. If
  636. however you specify these size parameters, the image will be displayed
  637. to the specified size in pixels. For example:
  638.  
  639.  <img src="picture.gif" width=640 height=480>
  640.                                    
  641.                                  Lists
  642.  
  643. HTML supports a number of types of list: Ordered, Unordered,
  644. Definition, Menu and Directory.
  645.  
  646. Ordered lists are displayed one item per line, with a sequential
  647. numbering system to the left of each item. An ordered list is declared
  648. by the start-tag <OL> and terminated with the end-tag </OL>.
  649. Individual items are declared with the tag <LI>. For example:
  650.  
  651.  <OL>
  652.  <LI> Item one
  653.  <LI> Item two
  654.  <LI> Item three
  655.  </OL>
  656.  
  657. Which is displayed by an HTML viewer as:
  658.  
  659.  1.   Item one
  660.  2.   Item two
  661.  3.   Item three
  662.  
  663. The numbering system may be amended with the optional TYPE= command.
  664. The valid types are A,a,I,i,1 giving the following displays:
  665.  
  666.  A.   Item one
  667.  B.   Item two
  668.  C.   Item three
  669.  
  670.  a.   Item one
  671.  b.   Item two
  672.  c.   Item three
  673.  
  674.  I.   Item one
  675.  II.  Item two
  676.  III. Item three
  677.  
  678.  i.    Item one
  679.  ii.   Item two
  680.  iii.  Item three
  681.  
  682.  1.    Item one
  683.  2.    Item two
  684.  3.    Item three
  685.  
  686. The starting number may be defined by adding a START= command to the
  687. ordered list declaration, for example:
  688.  
  689.  <OL START=100>
  690.  
  691. Which then produces the following display:
  692.  
  693.  100. Item one
  694.  101. Item two
  695.  102. Item three
  696.  
  697. The numbering order may be further amended during the list by adding a
  698. VALUE= command to a list item declaration, for example:
  699.  
  700.  <OL START=100>
  701.  <LI> Item one
  702.  <LI VALUE=500> Item two
  703.  <LI> Item three
  704.  </OL>
  705.  
  706. Which produces the following display:
  707.  
  708.  100. Item one
  709.  500. Item two
  710.  501. Item three
  711.  
  712.  
  713. An unordered list is displayed without numbering, but with bullets,
  714. for example:
  715.  
  716.  <UL>
  717.  <LI> Item one
  718.  <LI> Item two
  719.  <LI> Item three
  720.  </UL>
  721.  
  722. Which is displayed by an HTML viewer as:
  723.  ■ Item one
  724.  ■ Item two
  725.  ■ Item three
  726.  
  727. Some HTML viewers allow the bullet style to be redefined with a TYPE=
  728. command, accepting the values DISC, CIRCLE and SQUARE, for example:
  729.  
  730.  <UL TYPE=SQUARE>
  731.  <LI> Item one
  732.  <LI> Item two
  733.  <LI> Item three
  734.  </UL>
  735.  
  736. Directory lists, specified by the <DIR> element, are similar to
  737. unordered lists. They represent a list of short items, typically up to
  738. 20 characters each. Items in a directory list may be arranged in
  739. columns, typically 24 characters wide, but may not be nested (unlike
  740. other lists). Some HTML viewers will further display directory lists
  741. in a different font to other lists.
  742.  
  743. Menu lists are effectively the same as unordered lists, but link
  744. directory lists may not be nested and some HTML viewers can display
  745. them in a different font (notably Mosaic) to differentiate them from
  746. other unordered lists.
  747.  
  748. Definition lists are used for listing terms and their definitions. A
  749. definition list is declared with the start-tag <DL>, and rather than
  750. using the list item tag <LI>, it uses a pair of tags, data-term and
  751. data-definition, <DT> and <DD> respectively. The data-definition is
  752. displayed indented from the preceding data-term. For example:
  753.  
  754.  <DL>
  755.  <DT>Definition one
  756.  <DD> Description of definition one which can wrap around to more
  757.  than one line
  758.  <DT>Definition two
  759.  <DD> Description two which can wrap around<BR>to more than one line
  760.  <DT>Definition three
  761.  <DD> Description of definition three
  762.  </DL>
  763.  
  764. Which is displayed by an HTML viewer as:
  765.  
  766.  Definition one
  767.  Description of definition one which can wrap around to
  768.  more than one line
  769.  Definition two
  770.  Description of definition two which can also wrap around
  771.  to more than one line
  772.  Definition three
  773.  Description of definition three
  774.                                    
  775.                               Hyperlinks
  776.  
  777. Hyperlinks enable the user of an HTML document to navigate through the
  778. currently loaded document (using local hyperlinks) and to external
  779. resources.
  780.  
  781. All hyperlinks are defined in the HTML source code by anchors. An
  782. anchor is the following HTML code:
  783.  
  784.  <A HREF="destination">hyperlink display</A>
  785.  
  786. For example:
  787.  
  788.  <A HREF="http://part_two.htm">Part Two</A>
  789.  
  790. Would create a hyperlink to the resource "part_two.htm" which is
  791. expected by the HTML viewer to be an HTML document in the current
  792. directory (known as the base URI). The HTML viewer knows to terminate
  793. displaying text as a hyperlink by the anchor end-tag </A>. To the
  794. user, the hyperlink would be displayed as:
  795.  
  796.  Part Two
  797.  
  798. An image could be used instead of the text, by replacing the hyperlink
  799. display text with an inline image command, for example:
  800.  
  801.  <A HREF="http://part_two.htm"><img src="part2.gif"></A>
  802.  
  803. Local hyperlinks:
  804.  
  805. Local hyperlinks, known as "Fragment Identifiers", are defined in a
  806. hypertext address by a # character following the resource.  If
  807. navigation is required within the local document, the resource may be
  808. omitted so that a local hyperlink may look like:
  809.  
  810.  <A HREF="#introduction">Introduction</A>
  811.  
  812. Selecting this hyperlink will cause the HTML viewer to search the
  813. current document for a declaration of "introduction". This declaration
  814. is achieved with the anchor name tag <A NAME=>, like this:
  815.  
  816.  <A NAME="Introduction">
  817.  
  818. Notice that the <A NAME=> tag does not have an end-tag, and is case
  819. insensitive. It doesn't matter if the anchor name is declared as
  820. "INTRODUCTION" or "Introduction" or even "introDuction" it will still
  821. be found by a hyperlink to "#introduction".
  822.  
  823. Local hyperlinks can be added to hyperlinks to external documents to
  824. force the HTML viewer to load an external document and then navigate
  825. straight to a desired section within that document.
  826. For example:
  827.  
  828.  <A HREF="http://part_two.htm#section_3">Life and Love</A>
  829.  
  830. Will create a hyperlink to the anchor "section_3" within the HTML
  831. document "part_two.htm".
  832. The following HTML document illustrates the use of local hyperlinks to
  833. form a table of contents to a document. Although this document is very
  834. short, you can see how the principle can be applied to longer and more
  835. complex documents.
  836.  
  837.  <HTML>
  838.  <HEAD>
  839.  </HEAD>
  840.  <BODY>
  841.  <TITLE>Local Hyperlink Example HTML document</TITLE>
  842.  
  843.  <P>
  844.  <H2>Contents</H2>
  845.  
  846.  <OL>
  847.  <LI><A HREF="#AEGIR">Aegir</A>
  848.  <LI><A HREF="#AESIR">Aesir</A>
  849.  <LI><A HREF="#ASGARD">Asgard</A>
  850.  <LI><A HREF="#BALDER">Balder</A>
  851.  <LI><A HREF="#BERSERKER">Berserker</A>
  852.  <LI><A HREF="#BERTHA">Bertha</A>
  853.  <LI><A HREF="#BRAGI">Bragi</A>
  854.  </OL>
  855.  
  856.  <A NAME="AEGIR"><I><B>Aegir</B></I>
  857.  <P>
  858.  In Norse mythology, Aegir is the god of the sea.
  859.  <P>
  860.  <A NAME="AESIR"><I><B>Aesir</B></I>
  861.  <P>
  862.  The Aesir were the principal gods in Norse mythology.
  863.  They lived in <A HREF="#ASGARD">Asgard</A>.
  864.  <P>
  865.  <A NAME="ASGARD"><I><B>Asgard</B></I>
  866.  <P>
  867.  In Norse mythology Asgard was the home of the gods.
  868.  <P>
  869.  <A NAME="BALDER"><I><B>Balder</B></I>
  870.  <P>
  871.  In Norse mythology, Balder was the son of Odin and Freya and husband
  872.  of Nanna,
  873.  and the best, wisest, and most loved of all the gods. He was killed,
  874.  at
  875.  Loki's instigation, by a twig of mistletoe shot by the blind god
  876.  Hodur.
  877.  <P>
  878.  <A NAME="BERSERKER"><I><B>Berserker</B></I>
  879.  <P>
  880.  In Norse mythology, a Berserker was a warrior whose frenzy in battle
  881.  transformed him into a wolf or bear howling and foaming at the
  882.  mouth,
  883.  and rendered him immune to sword and flame.
  884.  <P>
  885.  <A NAME="BERTHA"><I><B>Bertha</B></I>
  886.  <P>
  887.  In Norse mythology, Bertha is the goddess of spinning.
  888.  <P>
  889.  <A NAME="BRAGI"><I><B>Bragi</B></I>
  890.  <P>
  891.  In Norse mythology, Bragi is the god of poetry and eloquence. He was
  892.  married
  893.  to the goddess Iduna who dwelt in the underworld.
  894.  </BODY>
  895.  </HTML>
  896.  
  897. Netscape introduced a number of new commands for hyperlinks. TARGET=
  898. can be used to open the hyperlink document in a new instance of the
  899. HTML viewer, or a specified frame. More about frames later. For
  900. example:
  901.  
  902.  <A HREF=next.htm TARGET=_BLANK>Next Document</A>
  903.  
  904. When the hyperlink "Next Document" is selected, the document
  905. "next.htm" will be opened and displayed in a new instance of the HTML
  906. viewer.
  907.  
  908. Hyperlinks are not restricted to other HTML documents. They can be
  909. used to access news servers, gopher servers, send mail and access ftp
  910. servers.
  911.  
  912. A hyperlink to send mail uses the URL "mailto:"
  913. For example the following link attempts to send an email message to
  914. me:
  915.  
  916.  <A HREF="mailto:probertm@pins.co.uk">Feedback</A>
  917.  
  918. Some HTML viewers will also support the addition of an optional
  919. subject, to save the user typing it in. For example:
  920.  
  921.  <A HREF="mailto:probertm@pins.co.uk" ?SUBJECT=Feedback>Feedback</A>
  922.  
  923. Files can be sent to the user through FTP links, to send a specific
  924. file, use something like:
  925.  
  926.  < A HREF="ftp://server/path/filename">Download file</A>
  927.  
  928. For example:
  929.  
  930.  Download <a
  931.  href="ftp://ftp.pins.co.uk/seville/bbsc70.zip">BBSC70.ZIP</A>
  932.  
  933. The HTML viewer will usually contact the FTP server, and attempt to
  934. connect using the name "anonymous" and sending the user's email
  935. address as a password.
  936.  
  937. Linking to a gopher server is achieved with the URL gopher:// for
  938. example:
  939.  
  940.  <A HREF="gopher://gopher.pins.co.uk>
  941.  
  942. Linking to a telnet service is achieved with the telnet:// URL, for
  943. example:
  944.  
  945.  <A HREF="telnet://pins.co.uk">
  946.  
  947. Linking to a WAIS index server is achieved with the wais:// URL, for
  948. example:
  949.  
  950.  <A HREF="wais://wais.pins.co.uk">
  951.  
  952. Linking to a news server is achieved with the nntp:// URL, for
  953. example:
  954.  
  955.  <A HREF="nntp://news.pins.co.uk">
  956.  
  957.                                    
  958.                               Image Maps
  959.  
  960. Image maps are a number of links defined as areas of a displayed
  961. image. They can be thought of as two distinct components, a map and an
  962. image. The map giving instructions as to the links and the image
  963. simply being a standard inline image. Each pixel of the image can be a
  964. link to another URL if required, but more usually different areas of
  965. the image link to different URLs. The following example illustrates
  966. the use of a simple image map. The image is displayed as normal with
  967. an <IMG> tag, but with the addition of the USEMAP command to indicate
  968. that the inline image is an image map. For example:
  969.  
  970.  <IMG SRC="map.gif" USEMAP="sample.html">
  971.  
  972. The map component may be processed by the HTML viewer (a client side
  973. image map) or by the HTTP server if the HTML viewer cannot process
  974. maps.
  975.  
  976. A server image map is defined by adding the command ISMAP to the <IMG>
  977. tag, for example:
  978.  
  979.  <IMG SRC="map.gif" USEMAP="sample.html" ISMAP>
  980.  
  981. In this case, the HTML viewer will expect the map information to be
  982. processed by the server.
  983.  
  984. A client side image map (CSIM), however, is a map processed by the
  985. HTML viewer, which gets the map information from an HTML document
  986. found by the hyperlink following the USEMAP= command, in this case it
  987. follows later in the same document, and occurs between the <MAP> and
  988. </MAP> tags:
  989.  
  990.  <IMG SRC="map.gif" width=300 height=200 USEMAP="#sample">
  991.  
  992.  <MAP NAME="sample">
  993.  <AREA SHAPE=RECT COORDS="60,80,120,100" HREF=map1.htm>
  994.  <AREA SHAPE=RECT COORDS="140,130,210,160" HREF=map2.htm>
  995.  <AREA SHAPE=RECT COORDS="80,20,220,50" HREF=map3.htm>
  996.  </MAP>
  997.  
  998. The first line tells the HTML viewer that this is a map, and assigns
  999. it a unique name, in this case "sample". The next three lines define
  1000. three link areas within the image. Each area is defined with one the
  1001. forms:
  1002.  
  1003.  <AREA SHAPE=RECT COORDS="top,left,bottom,right" HREF=URL>
  1004.  
  1005.  or
  1006.  
  1007.  <AREA SHAPE=CIRCLE COORDS="x,,y,radius" HREF=URL>
  1008.  
  1009.  or
  1010.  
  1011.  <AREA SHAPE=POLY COORDS="x,y,x2,y2,x3,y3....xn,yn" HREF=URL>
  1012.  
  1013. These co-ordinates are pixel co-ordinates within the image and define
  1014. a region within which the link occurs. The SHAPE=RECT command expects
  1015. a rectangular region described by two pairs of co-ordinates. The
  1016. SHAPE=CIRCLE command expects a circular region described by the co-
  1017. ordinates of the circle centre, followed by the radius. The final
  1018. example, SHAPE=POLY describes a multi-sided area.
  1019.  
  1020. Here is the complete HTML example with blank lines inserted to make it
  1021. easier to read and determine the individual areas:
  1022.  
  1023.  <HTML>
  1024.  <HEAD>
  1025.  <TITLE>Example Image Map</TITLE>
  1026.  </HEAD>
  1027.  <BODY>
  1028.  
  1029.  <H1 align=center>This Is An Image Map Example</H1>
  1030.  <CENTER>
  1031.  <IMG SRC="map.gif" width=300 height=200 USEMAP="#sample" ISMAP>
  1032.  </CENTER>
  1033.  <MAP NAME="sample">
  1034.  <AREA SHAPE=RECT COORDS="60,80,120,100" HREF=map1.htm>
  1035.  <AREA SHAPE=RECT COORDS="140,130,210,160" HREF=map2.htm>
  1036.  <AREA SHAPE=RECT COORDS="80,20,220,50" HREF=map3.htm>
  1037.  </MAP>
  1038.  </BODY>
  1039.  </HTML>
  1040.  
  1041. A NOHREF command, rather than an HREF= command, indicates that clicks
  1042. in the defined area should not lperform a hyperlink.  An HREF tag
  1043. specifies where a click in that area should lead.  Note that a
  1044. relative anchor specification will be expanded using the URL of the
  1045. map description as a base, rather than using the URL of the document
  1046. from which the map description is referenced (important if the map
  1047. definition is in a file separate to the main document).  If a BASE tag
  1048. is present in the document containing the map description, that URL
  1049. will be used as the base.
  1050.  
  1051. Any number of AREA tags may be specified within a map. If two areas
  1052. intersect, the one which appears first in the map definition takes
  1053. precedence in the overlapping region, and it's hyperlink jump will
  1054. take place rather than the one specified in the later defined area. In
  1055. this way, a default hyperlink may be made by defining an area covering
  1056. the entire image, and placing this definition at the end of the map,
  1057. so that any overlapping areas will take precedence over the default
  1058. area.
  1059.  
  1060.  
  1061.                           Advanced Formatting
  1062.  
  1063.  
  1064.  
  1065. Multiple Spaces:
  1066.  
  1067. HTML viewers reduce all white space into a single space character. If
  1068. you want to add spaces between words, or padd a table column with
  1069. white space you can use the   entity. For example:
  1070.  
  1071.  Hello     World
  1072.  
  1073. Will display as
  1074.  
  1075.  Hello    World
  1076.  
  1077.  
  1078. Tables:
  1079.  
  1080. The HTML table tags enable an HTML author to display information in a
  1081. tabular format. A table is a grid of cells, each cell may contain a
  1082. mixture of text and images and be a different size to the other cells
  1083. in the table.
  1084.  
  1085. A table is declared within the start-tag <TABLE> and end-tag </TABLE>.
  1086. You can specify a border and its width in pixels for the table by
  1087. adding a BORDER= command to the table start-tag, for example:
  1088.  
  1089.  <TABLE BORDER=1>
  1090.  
  1091. Will give the displayed table a border 1 pixel wide. A wider border
  1092. can be forced with BORDER=10 for example:
  1093.  
  1094.  <TABLE BORDER=10>
  1095.  
  1096. The spacing between the cells can also be determined in pixels with
  1097. the CELLSPACING= command. If you want a 10 pixel gutter between the
  1098. table cells add the command CELLSPACING=10 to the table start-tag:
  1099.  
  1100.  <TABLE CELLSPACING=10>
  1101.  
  1102.  
  1103. The spacing between the cell walls and the enclosed data  can also be
  1104. determined in pixels with the CELLPADDING= command. If you want a 10
  1105. pixel gutter between the table cell walls and the data in the cell add
  1106. the command CELLPADDING=10 to the table start-tag:
  1107.  
  1108.  <TABLE CELLPADDING=10>
  1109.  
  1110. Finally the width of the table can be expressed in pixels, or as a
  1111. ratio of the document window width with the WIDTH= command;
  1112.  
  1113.  <TABLE WIDTH=50%>
  1114.  
  1115. Putting this together we might want a table 200 pixels wide, with a
  1116. cell spacing of 5 pixels and a border of 4 pixels width. The following
  1117. table start-tag will achieve this:
  1118.  
  1119.  <TABLE CELLSPACING=5 WIDTH=200 BORDER=4>
  1120.  
  1121.  
  1122. A caption can be included for the table with the caption tags
  1123. <CAPTION> and </CAPTION>. The text or image contained within the
  1124. caption tags will usually be displayed centred at the top of the
  1125. table, just above the top border line. You can force the caption to be
  1126. displayed below the table by adding the ALIGN=BOTTOM command to the
  1127. caption start-tag, for example:
  1128.  
  1129.  <TABLE>
  1130.  <CAPTION>This caption displays above the table</CAPTION>
  1131.  </TABLE>
  1132.  
  1133.  
  1134.  <TABLE>
  1135.  <CAPTION ALIGN=BOTTOM>This caption displays below the
  1136.  table</CAPTION>
  1137.  </TABLE>
  1138.  
  1139. Table cells are defined in terms or rows and within the rows, columns
  1140. (either "table header" or "table data" cells). A table row is defined
  1141. within the tags <TR> and </TR>, for example:
  1142.  
  1143.  <TABLE>
  1144.  <TR>
  1145.  .....
  1146.  </TR>
  1147.  </TABLE>
  1148.  
  1149.  
  1150. A table header column is defined within a row by the tags <TH> and
  1151. </TH>, for example;
  1152.  
  1153.  <TABLE>
  1154.  <TR>
  1155.  <TH>
  1156.  This is a table!
  1157.  </TH>
  1158.  </TR>
  1159.  </TABLE>
  1160.  
  1161. Table header cells are, by default, displayed in BOLD and aligned in
  1162. the centre both horizontally and vertically.
  1163.  
  1164. A table data column is defined within a row by the tags <TD> and
  1165. </TD>, for example;
  1166.  
  1167.  <TABLE>
  1168.  <TR>
  1169.  <TD>
  1170.  This is a table!
  1171.  </TD>
  1172.  </TR>
  1173.  </TABLE>
  1174.  
  1175. Table data cells are, by default, aligned left and vertically centred
  1176. within the cell.
  1177.  
  1178. Each table column may have individual alignment characteristics
  1179. defined by the ALIGN= and VALIGN= commands which override the default
  1180. settings. The ALIGN= command can be used to force the display to the
  1181. left or right of the cell, and the VALIGN= command to force the
  1182. display to the top or bottom of the cell for example:
  1183.  
  1184.  <HTML>
  1185.  <HEAD>
  1186.  <TITLE>Table Example</TITLE>
  1187.  </HEAD>
  1188.  
  1189.  <TABLE CELLSPACING=10 BORDER=1 WIDTH=100%>
  1190.  <CAPTION ALIGN=BOTTOM>Table Caption</CAPTION>
  1191.  <TR>
  1192.  <TD>
  1193.  Cell One is aligned to the left and in the centre vertically
  1194.  </TD>
  1195.  <TD>
  1196.  Cell Two
  1197.  <P>has multiple lines
  1198.  <P>in it
  1199.  <P>and is displayed to the left of the cell
  1200.  </TD>
  1201.  </TR>
  1202.  
  1203.  <TR>
  1204.  <TD ALIGN=CENTER VALIGN=TOP>
  1205.  Cell Three is centred horizontally,
  1206.  <P>at the top of the cell
  1207.  </TD>
  1208.  <TD ALIGN=RIGHT>
  1209.  Cell Four is another
  1210.  <P>multiple line cell
  1211.  <P>displayed to the right
  1212.  </TD>
  1213.  
  1214.  </TR>
  1215.  </TABLE>
  1216.  </BODY>
  1217.  </HTML>
  1218.  
  1219. You can stop the HTML viewer from word-wrapping the text within a cell
  1220. by adding the command NOWRAP to the cell definition, for example:
  1221.  
  1222.  <TD NOWRAP>This text will be displayed as one long line</TD>
  1223.  
  1224. The size of the cell can be determined, to a degree, with the COLSPAN=
  1225. and ROWSPAN= commands. These tell the HTML viewer how many columns and
  1226. rows the cell is to span in relation to the rest of the table. For
  1227. example:
  1228.  
  1229.  <HTML>
  1230.  <HEAD>
  1231.  <!-- Example of a simple table -->
  1232.  <TITLE>Simple Table</TITLE>
  1233.  </HEAD>
  1234.  <BODY>
  1235.  <TABLE BORDER=1>
  1236.  <TR><TH colspan=3>Protoplasm</TH></TR>
  1237.  <TR><TH>Plants</TH><TH>Invertebrates</TH><TH>Vertebrates</TH></TR>
  1238.  </TABLE>
  1239.  </BODY>
  1240.  </HTML>
  1241.  
  1242.  
  1243. Blank or empty cells can be defined to force cells within a row to the
  1244. right, for example:
  1245.  
  1246.  <TD></TD>
  1247.  
  1248. Putting these concepts together, quite complex tables can be
  1249. constructed, for example:
  1250.  
  1251.  <HTML>
  1252.  <HEAD>
  1253.  <!-- Example of a complex table -->
  1254.  <TITLE>Evolution</TITLE>
  1255.  </HEAD>
  1256.  <BODY>
  1257.  <TABLE BORDER=1>
  1258.  <CAPTION>A Simplified Overview of Evolution</CAPTION>
  1259.  <TR><TH colspan=28>Protoplasm</TH></TR>
  1260.  <TR><TH colspan=27>Single-cell Plant
  1261.  Animals</TH><TD>Bacteria</TD></TR>
  1262.  <TR><TH colspan=5>Invertebrates</TH><TH colspan=3>Fungi</TH>
  1263.  <TH colspan=18>Vertebrates</TH><TD>Sponges</TD></TR>
  1264.  <TR><TH colspan=4>Ringed Worms</TH><TD>Jelly fish</TD>
  1265.  <TH colspan=3>Mosses</TH><TH colspan=16>Sharks</TH>
  1266.  <TD>Sea Squirts</TD><TD>Lancelets</TD></TR>
  1267.  <TR><TD>Cone
  1268.  shells</TD><TD>Spiders</TD><TD>Snails</TD><TD>Insects</TD>
  1269.  <TD></TD><TD>Conifers</TD><TD>Ferns</TD><TD>Flowering Plants</TD>
  1270.  <TH colspan=15>Amphibians</TH><TD>Bony Fishes</TD></TR>
  1271.  <TR><TD></TD><TD></TD><TD></TD><TD></TD><TD></TD><TD></TD><TD>
  1272.  </TD><TD></TD><TH
  1273.  colspan=13>Reptiles</TH><TD>Newts</TD><TD>Frogs</TD>
  1274.  </TR><TR><TD></TD><TD></TD><TD></TD><TD></TD><TD></TD><TD></TD>
  1275.  <TD></TD><TD></TD><TH colspan=11>Mammals</TH><TD>Crocodiles</TD>
  1276.  <TD>Lizards</TD></TR>
  1277.  <TR><TD></TD><TD></TD><TD></TD><TD></TD><TD></TD><TD></TD><TD>
  1278.  </TD><TD></TD><TD></TD><TH colspan=2>Ungulates</TH>
  1279.  <TH colspan=3>Carnivores</TH><TH colspan=3>Apes</TH><TD>Rodents</TD>
  1280.  <TD>Marsupials</TD></TR><TR><TD></TD><TD></TD><TD></TD><TD></TD>
  1281.  <TD></TD><TD></TD><TD></TD><TD></TD><TD></TD><TD>Cattle</TD>
  1282.  <TD>Deer</TD><TD>Cats</TD><TD>Civets</TD><TD>Weasels</TD>
  1283.  <TD>Monkeys</TD><TD>Gorillas</TD><TD>Man</TD></TR>
  1284.  </TABLE>
  1285.  </BODY>
  1286.  </HTML>
  1287.  
  1288. Microsoft's Internet Explorer supports use of the BGCOLOR= command in
  1289. the <TABLE> tag.  It allows the background colour of the table to be
  1290. specified using a standard rrggbb hex triplet. For example:
  1291.  
  1292.  <TABLE BGCOLOR="FFFFFF">
  1293.  
  1294. Microsoft's Internet Explorer includes support for the BORDERCOLOR=
  1295. command which sets the border colour of the table. It takes as a
  1296. parameter a rrggbb hex triplet.  It is necessary for the BORDER
  1297. attribute to be present in the main <TABLE> tag for border colouring
  1298. to work.
  1299.  
  1300. Microsoft's Internet Explorer allows use of the BORDERCOLORLIGHT=
  1301. command to set independently, the lighter colour to be displayed on a
  1302. 3-dimensional <TABLE> border.  It is the opposite of BORDERCOLORDARK.
  1303. It takes a colour parameter defined by a rrggbb hex triplet.  It is
  1304. necessary for the BORDER attribute to be present in the main <TABLE>
  1305. tag for border colouring to work.
  1306.  
  1307. Microsoft's Internet Explorer allows use of the BORDERCOLORDARK=
  1308. command to set independently, the darker colour to be displayed on a 3-
  1309. dimensional <TABLE> border.  It is the opposite of BORDERCOLORLIGHT.
  1310. It takes as a parameter a colour defined by a rrggbb hex triplet.  It
  1311. is necessary for the BORDER attribute to be present in the main
  1312. <TABLE> element for border colouring to work.
  1313.  
  1314. NOTE : The BGCOLOR, BORDERCOLOR, BORDERCOLORLIGHT and BORDERCOLORDARK
  1315. attributes can also be used in <TH>, <TR> and <TD>tags, with the
  1316. colour defined in the last element over-riding those defined before.
  1317. E.g. if a <TD> element contains a BORDERCOLOR attribute setting, the
  1318. setting specified will be used instead of any colour settings that may
  1319. have been specified in the <TR> element, which in turn over-rides any
  1320. colour settings in the <TABLE> element.
  1321.  
  1322. Some HTML viewers support the placing of background images images
  1323. inside the <TABLE>, <TH> and <TD> tags. If used in the <TABLE>
  1324. element, the image will be tiled behind all of the table cells. For
  1325. example:
  1326.  
  1327.  <TABLE BACKGROUND="myimage.gif">
  1328.  
  1329.  
  1330. Fixing Column Widths:
  1331.  
  1332. The HTML viewer property of displaying images within table cells can
  1333. be exploited to create fixed column widths in a table, where the data
  1334. contained within the colmns varies in width. Normally, the HTML viewer
  1335. generates columns based upon the widest element in the table column,
  1336. creating uneven column widths. However, by forcing one cell in each
  1337. column to a desired width, as wide or wider than the widest cell, you
  1338. can create even column widths. One way to do this is to create a GIF
  1339. image, of a single colour 2 x 2 pixels in size  and make it
  1340. transparent. Being so small this image will occupy a neglible amount
  1341. of disk space and load even remotely very fast. Then this image can be
  1342. used as an invisible element within a table cell to widen the cell as
  1343. desired. The following example does not work with Mosaic, which does
  1344. not support the image HEIGHT= and WIDTH= commands within a table cell,
  1345. but it does work with Internet Explorer:
  1346.  
  1347.  <HTML>
  1348.  <HEAD>
  1349.  <!-- Example of a fixed width table -->
  1350.  <TITLE>Table</TITLE>
  1351.  </HEAD>
  1352.  <BODY>
  1353.  
  1354.  <TABLE BORDER=1>
  1355.  <CAPTION><H1>Fixed Width Table Demonstration</H1></CAPTION>
  1356.  <TR>
  1357.  <TD><IMG SRC=spacer.gif height=1 width=300><BR>1.00</TD><TD><IMG
  1358.  SRC=spacer.gif height=1 width=300><BR>8654.88</TD><TD><IMG
  1359.  SRC=spacer.gif  height=1 width=300><BR>7430456.78</TD>
  1360.  <TR>
  1361.  <TD>46.00</TD><TD>87134.93</TD><TD>4031565.42</TD>
  1362.  <TR>
  1363.  <TD>51.00</TD><TD>554.10</TD><TD>440436.67</TD>
  1364.  <TR>
  1365.  <TD>11.00</TD><TD>6414.43</TD><TD>472816.72</TD>
  1366.  <TR>
  1367.  <TD>83.00</TD><TD>9824.01</TD><TD>734436.63</TD>
  1368.  </TR>
  1369.  </TABLE>
  1370.  </BODY>
  1371.  </HTML>
  1372.  
  1373.  
  1374.  
  1375. Setting Table Borders:
  1376.  
  1377. Internet Explorer supports the use of the FRAME= command which
  1378. requires the BORDER= command to be set and affects the display of the
  1379. table borders.  It can accept any of the following parameters:
  1380.  
  1381.  
  1382.  void      this removes all the external borders
  1383.  above     this displays external borders at the top of the table
  1384.  only
  1385.  below     this displays external borders at the bottom of the table
  1386.  only
  1387.  hsides    this displays external borders at the horizontal sides of
  1388.            the table.  I.e. at the top and bottom of the table.
  1389.  lhs       this displays external borders at the left hand edges of the
  1390.            table only
  1391.  rhs       this displays external borders at the right hand edges of 
  1392.            the table only.
  1393.  vsides    this displays external borders at both left and right hand
  1394.            edges of the table
  1395.  box       this displays a box around the table (i.e. top, bottom, left
  1396.            and right hand sides)
  1397.  
  1398. Internet Explorer supports the RULES= command.  It requires the BORDER
  1399. value to be set and may only be used in tables where the <THEAD>,
  1400. <TBODY> and <TFOOT> tags have been declared.  It affects the display
  1401. of the internal table borders ("rules").  It can accept the following
  1402. parameters:
  1403.  
  1404.  none      this removes all the internal rules
  1405.  basic     this displays horizontal borders between the <THEAD>,
  1406.            <TBODY> and <TFOOT> sections
  1407.  rows      this displays horizontal borders between all rows
  1408.  cols      this displays horizontal borders between all columns
  1409.  all       this displays all the internal rules.
  1410.  
  1411. Internet Explorer provides the <COLGROUP> and </COLGROUP> tag pair
  1412. which can be used within a <TABLE> definition to group columns
  1413. together to set their alignment properties.  It accepts the following
  1414. attributes:
  1415.  
  1416.  ALIGN="center|justify|left|right"
  1417.  This sets the text alignment within the column group. The default
  1418.  value is "center"
  1419.  
  1420.  VALIGN="baseline|bottom|middle|top"
  1421.  This sets the vertical text alignment within the column group.
  1422.  
  1423.  SPAN=
  1424.  This can be used to set the number of columns upon which the ALIGN
  1425.  and VALIGN attributes are to act.
  1426.  
  1427.  
  1428. An example of an Internet Explorer enhanced table:
  1429.  
  1430.  <HTML>
  1431.  <HEAD>
  1432.  <!-- Example of an Internet Explorer Enhanced table -->
  1433.  <TITLE>IE Table</TITLE>
  1434.  </HEAD>
  1435.  <BODY>
  1436.  <TABLE BORDER FRAME=hsides RULES=cols>
  1437.  
  1438.  <COL ALIGN=left>
  1439.  <COLGROUP SPAN=3 ALIGN=center VALIGN=middle>
  1440.  
  1441.  <THEAD>
  1442.  <CAPTION ALIGN=center>This is the table caption</CAPTION>
  1443.  
  1444.  <TR>
  1445.  <TD>These</TD><TD>are</TD><TD>heading</TD><TD>cells</TD>
  1446.  </TR>
  1447.  </THEAD>
  1448.  
  1449.  <TBODY>
  1450.  <TR>
  1451.  <TD>These</TD><TD>are</TD><TD>body</TD><TD>cells</TD>
  1452.  </TR>
  1453.  
  1454.  <TR>
  1455.  <TD>X</TD><TD>X</TD><TD>X</TD><TD>X</TD>
  1456.  </TR>
  1457.  
  1458.  <TR>
  1459.  <TD>X</TD><TD>X</TD><TD>X</TD><TD>X</TD>
  1460.  </TR>
  1461.  
  1462.  <TR>
  1463.  <TD>X</TD><TD>X</TD><TD>X</TD><TD></TD>
  1464.  </TR>
  1465.  
  1466.  <TR>
  1467.  <TD>X</TD><TD>X</TD><TD>X</TD><TD></TD>
  1468.  </TR>
  1469.  
  1470.  <TR>
  1471.  <TD>X</TD><TD>X</TD><TD>X</TD><TD></TD>
  1472.  </TR>
  1473.  
  1474.  </TBODY>
  1475.  <TFOOT></TFOOT>
  1476.  </TABLE>
  1477.  
  1478.  </BODY>
  1479.  </HTML>
  1480.  
  1481.  
  1482. CONTROLLING DOCUMENT BACKGROUNDS
  1483.  
  1484. THE BACKGROUND ATTRIBUTE
  1485.  
  1486. Recent versions of the proposed HTML 3.0 spec. have added a BACKGROUND
  1487. attribute to the BODY tag. The purpose of this attribute is to specify
  1488. a URL pointing to an image that is to be used as a background for the
  1489. document. In Mosaic 2.1.1, Netscape and Internet Explorer, this
  1490. background image is used to tile the full background of the document-
  1491. viewing area. Thus specifying:
  1492.  
  1493.  <BODY BACKGROUND="aluminum.gif">
  1494.  Document here
  1495.  </BODY>
  1496.  
  1497. would cause whatever text, images, etc. appeared in that document to
  1498. be placed on a tiled background image. If you prefer, a single large
  1499. image may be displayed which does not scroll when the document window
  1500. does by adding the command BGPROPERTIES=FIXED, for example:
  1501.  
  1502.  <BODY BACKGROUND="aluminum.gif" BGPROPERTIES=FIXED>
  1503.  Document here
  1504.  </BODY>
  1505.  
  1506.  
  1507. THE BGCOLOR ATTRIBUTE
  1508.  
  1509. Although not standard HTML, it is possible to define the colour of the
  1510. background displayed by most modern HTML viewers, including Mosaic
  1511. 2.1.1, Netscape Navigator and Microsoft Internet Explorer with the
  1512. BGCOLOR= command.
  1513.  
  1514.  <BODY BGCOLOR="#rrggbb">
  1515.  Document here
  1516.  </BODY>
  1517.  
  1518. Where "#rrggbb" is a hexadecimal red-green-blue triplet used to
  1519. specify the background colour.
  1520.  
  1521.  
  1522. TEXT ATTRIBUTES
  1523.  
  1524. Like the BGCOLOR= command, the TEXT= command controls the attribute of
  1525. normal text displayed in a document.
  1526.  
  1527.  <BODY TEXT="#rrggbb">
  1528.  Document here
  1529.  </BODY>
  1530.  
  1531.  
  1532. THE LINK, VLINK, AND ALINK ATTRIBUTE
  1533.  
  1534. These attributes let you control the colouring of link text. VLINK
  1535. stands for visited link, and ALINK stands for active link. The default
  1536. colouring of these is: LINK=blue, VLINK=purple, and ALINK=red. Again
  1537. the format for these attributes is the same as that for the BGCOLOR=
  1538. and TEXT= commands.
  1539.  
  1540. For example:
  1541.  
  1542.  <BODY LINK="#rrggbb" VLINK="#rrggbb" ALINK="#rrggbb">
  1543.  Document here
  1544.  </BODY>
  1545.  
  1546. Putting it all together, here is an example from Netscape which
  1547. illustrates a use of global colour attributes:
  1548.  
  1549.  <HTML>
  1550.  <HEAD>
  1551.  <TITLE>Colour Control Example</TITLE>
  1552.  </HEAD>
  1553.  
  1554.  <BODY BGCOLOR="#000000" TEXT="#F0F0F0" LINK="#FFFF00"
  1555.  VLINK="#22AA22"     ALINK="#0077FF">
  1556.  
  1557.  This is an example document.  Text is light-grey on black, and
  1558.  <a href="nowhere.html">anchors</a> are yellow at first,
  1559.  flashing blue-green when activated, and pale green if already
  1560.  visited.
  1561.  
  1562.  </BODY>
  1563.  </HTML>
  1564.  
  1565. Notice that Mosaic and Internet explorer do not support the ALINK=
  1566. command, it doesn't do any harm, unrecognised commands are simply
  1567. ignored! This is just one of the many discrepancies between the
  1568. various HTML viewers.
  1569.  
  1570.  
  1571. Controlling individual text attributes:
  1572.  
  1573. Some new HTML viewers, notably Netscape Navigator and Microsoft
  1574. Internet Explorer support a new tag, <FONT>. The <FONT> tag enables
  1575. the HTML author to specify a font size , colour and typeface. The size
  1576. ranges from 1 to 7, smallest to largest. The colour takes a standard
  1577. rgb hexadecimal triplet to define the attribute of the text within the
  1578. <FONT> and </FONT> tags. For example:
  1579.  
  1580.  <FONT SIZE=6 COLOR="FF0000" FACE="Arial">This is a Large Red Heading
  1581.  in Arial Font</FONT>
  1582.  
  1583. The font size can also be determined relative to the base font size
  1584. using + and - in the FONT SIZE= command, for example:
  1585.  
  1586.  <FONT SIZE=+1>This is the next size up from the standard text</FONT>
  1587.  <FONT SIZE=-1>This is the next size down from the standard
  1588.  text</FONT>
  1589.  
  1590. The base font size, colour and typeface can similarly be set with the
  1591. BASEFONT command, for example:
  1592.  
  1593.  <BASEFONT SIZE=4 FACE="ARIAL" COLOR="FF0000">
  1594.  
  1595. Will set the base font size to slightly larger than the default, which
  1596. is size 3.
  1597. You can specify the name of different faces, for example:
  1598.  
  1599.  <font face="arial, courier, geneva">
  1600.  
  1601. the HTML viewer will use "courier" if "arial" is not available on the
  1602. system, or "geneva" if
  1603. courier is not available either.
  1604.  
  1605. Preventing line breaks:
  1606. Both Netscape and Internet Explorer support the <NOBR> and </NOBR> tag
  1607. pair which prevent a long line from being broken. Instead the document
  1608. view window must be scrolled to the right by the user with the scroll-
  1609. bar to view the remainder of the text line. For example:
  1610.  
  1611.  <NOBR>The Abecedarian were the followers of Nicholas Storck, a 16th
  1612.  century German Anabaptist. They were so called because they rejected
  1613.  all worldly knowledge including    learning the alphabet.</NOBR>
  1614.  
  1615.  
  1616. Multi-Column Text:
  1617. Currently, multi-column text only seems to be supported by Netscape
  1618. Navigator. It is defined with the tag pair <MULTICOL COLS=n>  and
  1619. </MULTICOL>, for example:
  1620.  
  1621.  <MULTICOL COLS=4>
  1622.  This is multiple column text displayed by Netscape Navigator
  1623.  </MULTICOL>
  1624.  
  1625. Displays the text within the multicol tags in 4 columns.
  1626. The column widths and gutter between the columns can be defined by
  1627. adding the WIDTH= and GUTTER= commands to the <MULTICOL> tag.
  1628.  
  1629. Scrolling:
  1630. Microsoft's Internet Explorer supports scrolling lines of text, which
  1631. are declared by the <MARQUEE> tag. Only one line may be declared
  1632. within each <MARQUEE> tag, line breaks <BR> being ignored. For
  1633. example:
  1634.  
  1635.  <MARQUEE>
  1636.  This is a horizontal, animated, scrolling line of text!
  1637.  </MARQUEE>
  1638.  
  1639. The <MARQUEE> tag also supports colour definition triplets for the
  1640. background colour of the scrolling text, for example:
  1641.  
  1642.  <MARQUEE BGCOLOR="#FFFFFF">
  1643.  This is a horizontal, animated, scrolling line of text!
  1644.  </MARQUEE>
  1645.  
  1646. The behaviour of the scrolling text can be amended with the BEHAVIOUR=
  1647. command. This supports three parameters; SCROLL, SLIDE and ALTERNATE.
  1648.  
  1649. The default command is BEHAVIOUR=SCROLL, which displays the text
  1650. scrolling across the screen.
  1651.  
  1652. Adding the command BEHAVIOUR=ALTERNATE to the <MARQUEE> tag causes the
  1653. scrolling text to scroll to the right edge of the document window, and
  1654. then change direction, so that it scrolls left-to-right and then right-
  1655. to-left.
  1656.  
  1657.  <MARQUEE BEHAVIOR=ALTERNATE>
  1658.  
  1659. The SLIDE parameter causes the text to scroll on at the right-hand
  1660. side of the document window and slide over to the left before
  1661. stopping, with the text displayed at the left margin of the document
  1662. window.
  1663.  
  1664. The direction of the travelling text can be changed from right-to-left
  1665. by the inclusion of the DIRECTION= command to the <MARQUEE> tag. For
  1666. example, this will scroll from left-to-right, instead of the default
  1667. right-to-left.
  1668.  
  1669.  <MARQUEE DIRECTION=RIGHT>
  1670.  
  1671.  
  1672. Margins:
  1673. Microsoft's Internet Explorer supports the definition of a left and a
  1674. top margin with the commands LEFTMARGIN= and TOPMARGIN= which are
  1675. added to the <BODY> tag, for example:
  1676.  
  1677.  <BODY LEFTMARGIN=10 TOPMARGIN=10>
  1678.  
  1679. The margin size is measured in pixels and applies to the entire
  1680. document.
  1681.  
  1682.  
  1683. Buttons:
  1684. Form buttons can be used as unusual, 3d links. For example, the
  1685. following code creates a 3d button with the inscription "Link", which
  1686. when pressed jumps to the URL
  1687. www.pins.co.uk/upages/probertm/index.html.
  1688.  
  1689.  <FORM action="http://www.pins.co.uk/upages/probertm/index.html"
  1690.  METHOD=POST>
  1691.  <INPUT TYPE="submit" VALUE="Link">
  1692.  </FORM>
  1693.  
  1694. Inline Video:
  1695. Microsoft's Internet Explorer allows the author to embed .AVI (Audio
  1696. Video Interleave) video clips in HTML documents.  This is done with
  1697. the DYNSRC= command for the <IMG> tag.  Using the <IMG> tag for this
  1698. purpose makes it possible to add video clips to pages, but also have
  1699. other browsers display still images in their place. For example;
  1700.  
  1701.  <IMG DYNSRC="video.avi" SRC="TheEarth.gif" WIDTH=50 HEIGHT=50
  1702.  LOOP=INFINITE ALIGN=RIGHT>
  1703.  
  1704. The DYNSRC= command specifies the address of a video clip to be
  1705. displayed in the window.
  1706. In the above example, Internet Explorer will play the movie file
  1707. "video.avi"; while other browsers will display the picture
  1708. "TheEarth.gif"
  1709.  
  1710. You can add a START= command to the tag to specify when the video file
  1711. should start playing.  This attribute can be set to either FILEOPEN or
  1712. MOUSEOVER.  The default setting is FILEOPEN which means that the video
  1713. will start playing as soon as the HTML document has finished loading.
  1714. The MOUSEOVER parameter defines that the video will start playing when
  1715. the user moves the mouse cursor over the animation.  Both can be
  1716. specified together if necessary.
  1717.  
  1718. The CONTROLS command is a flag, which if specified causes a set of
  1719. controls to be displayed under the video clip window.
  1720.  
  1721. The LOOP= command specifies how many times a video clip will loop when
  1722. activated.  If n=-1, or if LOOP=INFINITE is specified, the video will
  1723. loop indefinitely.
  1724.  
  1725. The LOOPDELAY= command specifies, in milliseconds, how long a video
  1726. clip will wait between play back loops.
  1727.  
  1728. Embedded Objects:
  1729.  
  1730. The <EMBED> tag allows you to put objects (video clips, sound or
  1731. whatever) directly into an HTML page. The syntax is:
  1732.  
  1733.  <EMBED SRC="object_to_embed">
  1734.  
  1735. The <EMBED> element allows an HTML author to embed documents of any
  1736. type. The HTML viewer needs to have an application which can view the
  1737. data installed correctly on their machine, or have a "plug-in" (for
  1738. Netscape Navigator) that can manipulate the embedded file format.
  1739.  
  1740. The <EMBED> element can be used more or less the same as the <IMG>
  1741. element and so accepts typical image embedding commands such as WIDTH,
  1742. HEIGHT, BORDER, HSPACE, VSPACE.
  1743.  
  1744. For example, to embed a sound file:
  1745.  
  1746.  <embed src="sound.wav">
  1747.  
  1748. Which are then downloaded to the HTML viewer, and played by a fitted
  1749. soundcard, if the user has one and the HTML viewer supports sound.
  1750.                                    
  1751.                                 Frames
  1752.  
  1753. Frames divide Web pages into multiple, scrollable regions which enable
  1754. the HTML author to  present information in a more flexible and useful
  1755. fashion. Each region, or frame, has several features:
  1756.  
  1757.  1. It can be given an individual URL, so it can load information
  1758.  independent of the other frames on the page;
  1759.  
  1760.  2. It can be given a NAME, allowing it to be targeted by other URLs,
  1761.  and;
  1762.  
  1763.  3. It can resize dynamically if the user changes the window's size.
  1764.  (Resizing can also be disabled, ensuring a constant frame size.)
  1765.  
  1766. A frame is declared with the start-tag <FRAMESET> and the end-tag
  1767. </FRAMESET> which replace the traditional <BODY> and </BODY> tags in a
  1768. standard HTML document. The FRAMESET start-tag defines how many frames
  1769. (regions) the viewer window will be divided into, and the sizes of
  1770. these regions. The region sizes are defined in terms of pixel rows and
  1771. columns. For example, to divide the document window into two equal
  1772. frames, one above the other you can use the command;
  1773.  
  1774.  <FRAMESET ROWS=*,*>
  1775.  
  1776. The ROWS= command takes a comma separated list of pixel heights in
  1777. numbers, or in percentages or * to declare the pixel row height of
  1778. each frame. Replacing a number with an asterisk * tells the HTML
  1779. viewer to divide the available display area equally. The COLS= command
  1780. is similar, but applies to the horizontal width of each frame.
  1781.  
  1782. This example will split the display into two equal windows, and
  1783. display a different URL in each, 1.htm in one and 2.htm in the other:
  1784.  
  1785.  <html>
  1786.  <head>
  1787.  <title>Frame Example</title>
  1788.  </head>
  1789.  <frameset rows=*,*>
  1790.  <frame src=1.htm>
  1791.  <frame src=2.htm>
  1792.  </frameset>
  1793.  </html>
  1794.  
  1795. This example does the same, but displays divides the display
  1796. vertically instead of horizontally;
  1797.  
  1798.  <html>
  1799.  <head>
  1800.  <title>Frame Example</title>
  1801.  </head>
  1802.  <frameset cols=*,*>
  1803.  <frame src=1.htm>
  1804.  <frame src=2.htm>
  1805.  </frameset>
  1806.  </html>
  1807.  
  1808. Frames may be assigned names, by adding the NAME= command to the
  1809. <FRAME> tag, for example:
  1810.  
  1811.  <FRAME SRC=1.HTM NAME=ONE>
  1812.  
  1813. By default, the HTML viewer will decide whether or not to add scroll
  1814. bars to the frame. If you want to suppress this, add the command
  1815. SCROLLING=NO to the <FRAME> tag, for example:
  1816.  
  1817.  <FRAME SRC=1.HTM SCROLLING=NO>
  1818.  
  1819. A top and a left margin may be applied to each frame with the
  1820. MARGINHEIGHT= and MARGINWIDTH= commands within the <FRAME> tag. The
  1821. margin will force a blank area to the left and top of the resource
  1822. displayed within the frame. For example:
  1823.  
  1824.  <FRAME SRC=1.HTM MARGINHEIGHT=10 MARGINWIDTH=10>
  1825.  
  1826. Hyperlinks within a frame, will by default load new resources into the
  1827. current frame. However, this can be amended so that the new document
  1828. is loaded into a different frame. If you have named your frames with
  1829. the NAME= command, then the target frame can be easily defined with:
  1830.  
  1831.  <A HREF=new_doc.htm TARGET=named_frame>Link</A>
  1832.  
  1833. Where "named_frame" is the name of the frame you want "new_doc.htm" to
  1834. be loaded into. There are three predefined frame names: _top, _self
  1835. and _parent. _self refers to the current frame, and is the default
  1836. target for loading hyperlinked documents. _parent refers to the frame
  1837. which spawned the current frame, and _top refers to the entire display
  1838. window.
  1839.  
  1840. Here is a complete example comprised of a number of separate source
  1841. files. The name of each source file is in the title in brackets, e.g.
  1842. (test.htm):
  1843.  
  1844.  <html>
  1845.  <head>
  1846.  <title>Frame Test (test.htm)</title>
  1847.  </head>
  1848.  <frameset rows=*,*>
  1849.  <frame src=test1.htm name=test1>
  1850.  <frame src=test2.htm name=test2>
  1851.  </frameset>
  1852.  </html>
  1853.  
  1854.  <html>
  1855.  <head>
  1856.  <title>Frame Test (test1.htm)</title>
  1857.  </head>
  1858.  <body>
  1859.  This is file TEST1.HTM
  1860.  </body>
  1861.  </html>
  1862.  
  1863.  <html>
  1864.  <head>
  1865.  <title>Frame Test (test2.htm)</title>
  1866.  </head>
  1867.  <frameset cols=*,*>
  1868.  <frame src=test_a.htm name=testa>
  1869.  <frame src=test_b.htm name=testb>
  1870.  </frameset>
  1871.  </html>
  1872.  
  1873.  <html>
  1874.  <head>
  1875.  <title>Frame Test (test_a.htm)</title>
  1876.  </head>
  1877.  <body>
  1878.  This is file TEST_A.HTM
  1879.  </body>
  1880.  </html>
  1881.  
  1882.  <html>
  1883.  <head>
  1884.  <title>Frame Test (test_b.htm)</title>
  1885.  </head>
  1886.  <body>
  1887.  This is file TEST_B.HTM
  1888.  <P>
  1889.  <A href=test_c.htm target = test1>Load test_c.htm</A>
  1890.  </body>
  1891.  </html>
  1892.  
  1893.  <html>
  1894.  <head>
  1895.  <title>Frame Test (test_c.htm)</title>
  1896.  </head>
  1897.  <body>
  1898.  This is file TEST_C.HTM
  1899.  </body>
  1900.  </html>
  1901.  
  1902. Frames are a fairly recent innovation to the HTML language, and not
  1903. very many HTML viewers handle them. For those which don't there is the
  1904. tag pair <NOFRAMES> and </NOFRAMES> which declare a section of the
  1905. document to be displayed if the HTML viewer does not recognise frames.
  1906. This can be used to display a message or alternative form of the
  1907. document when viewed by HTML viewers which do not recognise frames,
  1908. for example:
  1909.  
  1910.  <html>
  1911.  <head>
  1912.  <title>Frame Test</title>
  1913.  </head>
  1914.  
  1915.  <noframes>
  1916.  This will only be displayed if the HTML viewer does not support
  1917.  frames
  1918.  </noframes>
  1919.  
  1920.  <frameset rows=*,*>
  1921.  <frame src=test1.htm name=test1>
  1922.  <frame src=test2.htm name=test2>
  1923.  </frameset>
  1924.  </html>
  1925.  
  1926. Floating Frames:
  1927. Microsoft's Internet Explorer has introduced the floating frame,
  1928. specified with the tag pair <IFRAME> and </IFRAME>. These behave in a
  1929. manner a cross between an inline image and a frame. That is, documents
  1930. can be loaded into a floating frame just like any other frame, but
  1931. floating frames are displayed as though they were an inline image. For
  1932. example:
  1933.  
  1934.  <IFRAME NAME="frame1" width="400" height="200"
  1935.  SRC="welcome.htm"></IFRAME>
  1936.  
  1937. Any text specified between the tags will be displayed to HTML viewers
  1938. which do not support floating frames, instead of the frame. For
  1939. example:
  1940.  
  1941.  <IFRAME NAME="frame1" width="400" height="200" SRC="welcome.htm">
  1942.  Sorry! This site can only be viewed with Internet Explorer
  1943.  </IFRAME>
  1944.                                    
  1945.                                  Forms
  1946.  
  1947.  
  1948. A form is a template for a form data set and an associated method and
  1949. action URI used on the WWW. Forms have no relevance to local HTML
  1950. publishing. A form data set is a sequence of name/value pair fields.
  1951. The names are specified on the NAME attributes of form input elements,
  1952. and the values are given initial values by various forms of markup and
  1953. edited by the user. The resulting form data set is used to access an
  1954. information service as a function of the action and method.
  1955.  
  1956. Forms elements can be mixed in with document structuring elements. For
  1957. example, a PRE element may contain a FORM element, or a FORM element
  1958. may contain lists which contain INPUT elements. This gives
  1959. considerable flexibility in designing the layout of forms.
  1960.  
  1961. Form Elements
  1962.  
  1963. <FORM>
  1964.  
  1965. The <FORM> element contains a sequence of input elements, along with
  1966. document structuring elements. The attributes are:
  1967.  
  1968. ACTION=
  1969.  
  1970. specifies the action URI for the form. The action URI of a form
  1971. defaults to the base URI of the document.
  1972.  
  1973. METHOD=
  1974.  
  1975. selects a method of accessing the action URI. The set of applicable
  1976. methods is a function of the scheme of the action URI of the form. See
  1977. section Query Forms: METHOD=GET and section Forms with Side-Effects:
  1978. METHOD=POST.
  1979.  
  1980. ENCTYPE =
  1981.  
  1982. specifies the media type used to encode the name/value pairs for
  1983. transport, in case the protocol does not itself impose a format.
  1984.  
  1985. <INPUT>
  1986.  
  1987. The <INPUT> element represents a field for user input. The TYPE=
  1988. attribute discriminates between several variations of fields.
  1989.  
  1990. The <INPUT> element has a number of attributes. The set of applicable
  1991. attributes depends on the value of the TYPE= attribute.
  1992.  
  1993. The default vaule of the TYPE attribute is `TEXT', indicating a single
  1994. line text entry field. (Use the TEXTAREA element for multi-line text
  1995. fields.)
  1996.  
  1997. Required attributes are:
  1998.  
  1999. NAME, the name for the form field corresponding to this element.
  2000.  
  2001. The optional attributes are MAXLENGTH  which constrains the number of
  2002. characters that can be entered into a text input field. If the value
  2003. of MAXLENGTH is greater the the value of the SIZE attribute, the field
  2004. should scroll appropriately. The default number of characters is
  2005. unlimited.
  2006.  
  2007. SIZE specifies the amount of display space allocated to this input
  2008. field according to its type. The default depends on the user agent.
  2009.  
  2010. VALUE  defines the initial value of the field.  For example:
  2011.  
  2012.  <p>
  2013.  Street Address:
  2014.  <input name=street><br>
  2015.  Town:
  2016.  <input name=city size=20 maxlength=20><br>
  2017.  Post Code:
  2018.  <input name=post size=10 maxlength=10><br>
  2019.  
  2020. An INPUT element with `TYPE=PASSWORD' is a text field as above, except
  2021. that the value is obscured as it is entered. For example:
  2022.  
  2023.  <p>Name:
  2024.  <input name=login>
  2025.  Password:
  2026.  <input type=password name=passwd>
  2027.  
  2028. An INPUT element with `TYPE=CHECKBOX' represents a boolean choice. A
  2029. set of such elements with the same name represents an n-of-many choice
  2030. field. Required attributes are:
  2031.  
  2032. NAME a symbolic name for the form field corresponding to this element
  2033. or group of elements.
  2034.  
  2035. VALUE the portion of the value of the field contributed by this
  2036. element.
  2037.  
  2038. Optional attributes are:
  2039.  
  2040. CHECKED indicates that the initial state is on.
  2041.  
  2042. For example:
  2043.  
  2044.  <p>
  2045.  What flavours do you like?
  2046.  <input type=checkbox name=flavour value=vanilla>
  2047.  Vanilla<br>
  2048.  <input type=checkbox name=flavour value=strawberry>
  2049.  Strawberry<br>
  2050.  <input type=checkbox name=flavour value=chocolate checked>
  2051.  Chocolate<br>
  2052.  
  2053. An INPUT element with `TYPE=RADIO' represents a boolean choice. A set
  2054. of such elements with the same name represents a 1-of-many choice
  2055. field. The NAME and VALUE attributes are required as for check boxes.
  2056. Optional attributes are:
  2057.  
  2058. CHECKED indicates that the initial state is on.
  2059.  
  2060. At all times, exactly one of the radio buttons in a set is checked. If
  2061. none of the INPUT elements of a set of radio buttons specifies
  2062. `CHECKED', then the user agent must check the first radio button of
  2063. the set initially. For example:
  2064.  
  2065.  <p>
  2066.  Which is your favourite?
  2067.  <input type=radio name=flavour value=vanilla>
  2068.  Vanilla<br>
  2069.  <input type=radio name=flavour value=strawberry>
  2070.  Strawberry<br>
  2071.  <input type=radio name=flavour value=chocolate>
  2072.  Chocolate<br>
  2073.  
  2074. An INPUT element with `TYPE=IMAGE' specifies an image resource to
  2075. display, and allows input of two form fields: the x and y coordinate
  2076. of a pixel chosen from the image. The names of the fields are the name
  2077. of the field with `.x' and `.y' appended. `TYPE=IMAGE' implies
  2078. `TYPE=SUBMIT' processing; that is, when a pixel is chosen, the form as
  2079. a whole is submitted.
  2080.  
  2081. The NAME attribute is required as for other input fields. The SRC
  2082. attribute is required and the ALIGN is optional as for the IMG
  2083. element. For example:
  2084.  
  2085.  <p>
  2086.  Choose a point on the map:
  2087.  <input type=image name=point src="map.gif">
  2088.  
  2089. An INPUT element with `TYPE=HIDDEN' represents a hidden field.The user
  2090. does not interact with this field; instead, the VALUE attribute
  2091. specifies the value of the field. The NAME and VALUE attributes are
  2092. required. For example:
  2093.  
  2094.  <input type=hidden name=context value="l2k3j4l2k3j4l2k3j4lk23">
  2095.  
  2096. An INPUT element with `TYPE=SUBMIT' represents an input option,
  2097. typically a button, that instructs the user agent to submit the form.
  2098. Optional attributes are:
  2099.  
  2100. NAME indicates that this element contributes a form field whose value
  2101. is given by the VALUE attribute. If the NAME attribute is not present,
  2102. this element does not contribute a form field.
  2103.  
  2104. VALUE indicates a label for the input button.  For example:
  2105.  
  2106.  You may submit this request internally:
  2107.  <input type=submit name=recipient value=internal><br>
  2108.  or to the external world:
  2109.  <input type=submit name=recipient value=world>
  2110.  
  2111. An INPUT element with `TYPE=RESET' represents an input option,
  2112. typically a button, that instructs the user agent to reset the form's
  2113. fields to their initial states. The VALUE attribute, if present,
  2114. indicates a label for the input button. For example:
  2115.  
  2116.  When you are finished, you may submit this request:
  2117.  <input type=submit><br>
  2118.  You may clear the form and start over at any time:
  2119.  <input type=reset>
  2120.  
  2121. The SELECT element constrains the form field to an enumerated list of
  2122. values. The values are given in OPTION elements. Attributes are:
  2123.  
  2124. MULTIPLE indicates that more than one option may be included in the
  2125. value.
  2126.  
  2127. NAME specifies the name of the form field.
  2128.  
  2129. SIZE specifies the number of visible items. Select fields of size one
  2130. are typically pop-down menus, whereas select fields with size greater
  2131. than one are typically lists. For example:
  2132.  
  2133.  <SELECT NAME="flavor">
  2134.  <OPTION>Vanilla
  2135.  <OPTION>Strawberry
  2136.  <OPTION value="RumRasin">Rum and Raisin
  2137.  <OPTION selected>Peach and Orange
  2138.  </SELECT>
  2139.  
  2140. The initial state has the first option selected, unless a SELECTED
  2141. attribute is present on any of the OPTION elements.
  2142.  
  2143. The Option element can only occur within a Select element. It
  2144. represents one choice, and has the following attributes:
  2145.  
  2146. SELECTED Indicates that this option is initially selected.
  2147.  
  2148. VALUE indicates the value to be returned if this option is chosen. The
  2149. field value defaults to the content of the OPTION element.
  2150.  
  2151. The content of the OPTION element is presented to the user to
  2152. represent the option. It is used as a returned value if the VALUE
  2153. attribute is not present.
  2154.  
  2155. The TEXTAREA element represents a multi-line text field. Attributes
  2156. are:
  2157.  
  2158. COLS the number of visible columns to display for the text area, in
  2159. characters.
  2160.  
  2161. NAME specifies the name of the form field.
  2162.  
  2163. ROWS the number of visible rows to display for the text area, in
  2164. characters.
  2165.  
  2166. For example:
  2167.  
  2168.  <TEXTAREA NAME="address" ROWS=6 COLS=64>
  2169.  HaL Computer Systems
  2170.  1315 Dell Avenue
  2171.  Campbell, California 95008
  2172.  </TEXTAREA>
  2173.  
  2174. The content of the TEXTAREA element is the field's initial value.
  2175.  
  2176. Typically, the ROWS and COLS attributes determine the visible
  2177. dimension of the field in characters. The field is typically rendered
  2178. in a fixed-width font. HTML user agents should allow text to extend
  2179. beyond these limits by scrolling as needed.
  2180.  
  2181.  
  2182. Form Submission
  2183.  
  2184. An HTML user agent begins processing a form by presenting the document
  2185. with the fields in their initial state. The user is allowed to modify
  2186. the fields, constrained by the field type etc. When the user indicates
  2187. that the form should be submitted (using a submit button or image
  2188. input), the form data set is processed according to its method, action
  2189. URI and enctype.
  2190.  
  2191. When there is only one single-line text input field in a form, the
  2192. user agent should accept Enter in that field as a request to submit
  2193. the form.
  2194.  
  2195.  
  2196. The form-urlencoded Media Type
  2197.  
  2198. The default encoding for all forms is `application/x-www-form-
  2199. urlencoded'. A form data set is represented in this media type as
  2200. follows:
  2201.  
  2202.  
  2203. 1.The form field names and values are escaped: space characters are
  2204. replaced by `+', and then reserved characters are escaped as per URL;
  2205. that is, non-alphanumeric characters are replaced by `%HH', a percent
  2206. sign and two hexadecimal digits representing the ASCII code of the
  2207. character. Line breaks, as in multi-line text field values, are
  2208. represented as CR LF pairs, i.e. `%0D%0A'.
  2209.  
  2210. 2.The fields are listed in the order they appear in the document with
  2211. the name separated from the value by `=' and the pairs separated from
  2212. each other by `&'. Fields with null values may be omitted. In
  2213. particular, unselected radio buttons and checkboxes should not appear
  2214. in the encoded data, but hidden fields with VALUE attributes present
  2215. should.
  2216.  
  2217.  
  2218. Query Forms: METHOD=GET
  2219.  
  2220. If the processing of a form is idempotent (i.e. it has no lasting
  2221. observable effect on the state of the world), then the form method
  2222. should be `GET'. Many database searches have no visible side-effects
  2223. and make ideal applications of query forms.
  2224.  
  2225. To process a form whose action URL is an HTTP URL and whose method is
  2226. `GET', the user agent starts with the action URI and appends a `?' and
  2227. the form data set, in `application/x-www-form-urlencoded' format as
  2228. above. The user agent then traverses the link to this URI just as if
  2229. it were an anchor (see section Activation of Hyperlinks).
  2230.  
  2231.  
  2232. Forms with Side-Effects: METHOD=POST
  2233.  
  2234. If the service associated with the processing of a form has side
  2235. effects (for example, modification of a database or subscription to a
  2236. service), the method should be `POST'.
  2237.  
  2238. To process a form whose action URL is an HTTP URL and whose method is
  2239. `POST', the user agent conducts an HTTP POST transaction using the
  2240. action URI, and a message body of type `application/x-www-form-
  2241. urlencoded' format as above. The user agent should display the
  2242. response from the HTTP POST interaction just as it would display the
  2243. response from an HTTP GET above.
  2244.  
  2245.  
  2246. Example Form Submission: Questionnaire Form
  2247.  
  2248. Consider the following document:
  2249.  
  2250.  <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
  2251.  <title>Sample of HTML Form Submission</title>
  2252.  <H1>Sample Questionnaire</H1>
  2253.  <P>
  2254.  Please fill out this questionnaire:
  2255.  <FORM METHOD="POST" ACTION="http://www.w3.org/sample">
  2256.  <P>
  2257.  Your name: <INPUT NAME="name" size="48">
  2258.  <P>
  2259.  Male <INPUT NAME="gender" TYPE=RADIO VALUE="male">
  2260.  <P>
  2261.  Female <INPUT NAME="gender" TYPE=RADIO VALUE="female">
  2262.  <P>
  2263.  Number in family: <INPUT NAME="family" TYPE=text>
  2264.  <P>
  2265.  Cities in which you maintain a residence:
  2266.  <UL>
  2267.  <LI>Kent <INPUT NAME="city" TYPE=checkbox VALUE="kent">
  2268.  <LI>Miami <INPUT NAME="city" TYPE=checkbox VALUE="miami">
  2269.  <LI>Other <TEXTAREA NAME="other" cols=48 rows=4></textarea>
  2270.  </UL>
  2271.  Nickname: <INPUT NAME="nickname" SIZE="42">
  2272.  <P>
  2273.  Thank you for responding to this questionnaire.
  2274.  <P>
  2275.  <INPUT TYPE=SUBMIT> <INPUT TYPE=RESET>
  2276.  </FORM>
  2277.  
  2278. The initial state of the form data set is:
  2279.  
  2280.  name
  2281.  
  2282.  ""
  2283.  
  2284.  gender
  2285.  
  2286.  "male"
  2287.  
  2288.  family
  2289.  
  2290.  ""
  2291.  
  2292.  other
  2293.  
  2294.  ""
  2295.  
  2296.  nickname
  2297.  
  2298.  ""
  2299.  
  2300. Note that the radio input has an initial value, while the checkbox has
  2301. none.
  2302.  
  2303. The user might edit the fields and request that the form be submitted.
  2304. At that point, suppose the values are:
  2305.  
  2306.  name
  2307.  
  2308.  "John Doe"
  2309.  
  2310.  gender
  2311.  
  2312.  "male"
  2313.  
  2314.  family
  2315.  
  2316.  "5"
  2317.  
  2318.  city
  2319.  
  2320.  "kent"
  2321.  
  2322.  city
  2323.  
  2324.  "miami"
  2325.  
  2326.  other
  2327.  
  2328.  "abc\ndef"
  2329.  
  2330.  nickname
  2331.  
  2332.  "J&D"
  2333.  
  2334. The user agent then conducts an HTTP POST transaction using the URI
  2335. `http://www.w3.org/sample'. The message body would be:
  2336.  
  2337.  name=John+Doe&gender=male&family=5&city=kent&city=miami&other=abc%0D
  2338.  %0Adef&nickname=J%26D
  2339.  
  2340. Interpretation of the message submitted is done by the URI. This
  2341. requires you to have access to your WWW server and knowledge of CGI.
  2342.                                    
  2343.                                  META
  2344.  
  2345. Meta tags are a new, and as yet non-formalised aspect of HTML used by
  2346. the WWW. The following information from the Internet Engineering Task
  2347. Force was distributed in January 1996, and should only be viewed as
  2348. work in progress.
  2349.  
  2350.  
  2351. Abstract
  2352.  
  2353. This document defines a strict synopsis for the META Tag of HTML.
  2354.  
  2355. The grammar is extended to the contents of the HTTP-EQUIV field,
  2356. defining a set of words to use to allow document cataloguing.
  2357.  
  2358. 1. Introduction
  2359.  
  2360. Now the synopsis of the META HTTP-EQUIV Tag is not severe, allowing so
  2361. the use of different key words to define the same things.
  2362.  
  2363. The functions like this:
  2364.  
  2365.  <META HTTP-EQUIV = "author" CONTENT = "Pennac, Rossi">
  2366.  
  2367. or:
  2368.  
  2369.  <META HTTP-EQUIV = "writer" CONTENT = "Pennac, Rossi">
  2370.  
  2371. could reppresent the same concepts with two different syntax.
  2372.  
  2373. The aim of this Draft is to define which are the words to use to
  2374. define the contents of an HTML document.
  2375.  
  2376. There are, also, some easy rules to implement a binary logic (AND or
  2377. OR) for the CONTENT field.
  2378.  
  2379. 2. The META Tag
  2380.  
  2381. The META element is used within the HEAD element to embed documents
  2382. meta-information not defined by other HTML elements. Such information
  2383. can be extracted by servers/clients for use in identifying, indexing
  2384. and cataloging specialized document meta-information.
  2385.  
  2386. Although it is generally preferable to used named elements that have
  2387. well defined semantics for each type of meta-information, such as
  2388. title, this element is provided for situations where strict SGML
  2389. parsing is necessary and the local DTD is not extensible.
  2390.  
  2391. In addition, HTTP servers can read the contents of the document head
  2392. to generate response headers corresponding to any elements defining a
  2393. value for the attribute HTTP-EQUIV.  This provides document authors
  2394. with a mechanism (not necessarily the preferred one) for identifying
  2395. information that should be included in the response headers of an HTTP
  2396. request.
  2397.  
  2398. The META element has three attributes:
  2399.  
  2400.  - HTTP-EQUIV
  2401.  - NAME
  2402.  - CONTENT
  2403.  
  2404. The HTTP-EQUIV and the NAME attributes are mutually exclusives.
  2405.  
  2406. 3. HTTP-EQUIV.
  2407.  
  2408. This attribute binds the element to an HTTP response header. If the
  2409. semantics of the HTTP response header named by this attribute is
  2410. known, then the contents can be processed based on a well defined
  2411. syntactic mapping, whether or not the DTD includes anything about it.
  2412.  
  2413. HTTP header names are case insensitive. If absent, the NAME attribute
  2414. should be used to identify the meta-information and it should not be
  2415. used within an HTTP response header.
  2416.  
  2417. It is possible to use any text string, but if you want to define these
  2418. properties you have to use the following words:
  2419.  
  2420.  keywords:      to indicate the keywords of the document
  2421.  author:        to indicate the author of the document
  2422.  timestamp:          to indicate when the document is authored
  2423.                           (HTTP-date format)
  2424.  expire:             to indicate the expire date of the document
  2425.                           (HTTP-date format)
  2426.  language:      to indicate the language of the document
  2427.                           (using ISO3316 code or ISO639 code)
  2428.  abstract:           to indicate the abstract of the document
  2429.  organization:  to indicate the organization of the author
  2430.  revision:           to indicate the revision number of the document
  2431.                           (format: 00, 01, 02, or 000, 001, ...)
  2432.  
  2433. An HTTP server must process these tags for an HEAD HTTP requester.
  2434. Do not name an HTTP-EQUIV attribute the same as a response header that
  2435. should typically only be generated by the HTTP server. Some
  2436. inappropriate names are "Server", "Date", and "Last-Modified".
  2437. Whether a name is inappropriate depends on the particular server
  2438. implementation. It is recommended that servers ignore any META
  2439. elements that specify HTTP equivalents (case insensitively) to their
  2440. own reserved response headers.
  2441.  
  2442. 4. NAME.
  2443.  
  2444. This attributes can be used to define some properties such as "number
  2445. of pages" or "preferred browser" or any info an author want to insert
  2446. in his document. The keywords indicates in the previous paragraph for
  2447. the HTTP-EQUIV are still valid also in the NAME context.
  2448.  
  2449. An example:
  2450.  
  2451.  <META NAME= "Maybe Published By" CONTENT = "McDraw Bill">
  2452.  
  2453. or
  2454.  
  2455.  <META NAME= "keywords" CONTENT = "manual, scouting">
  2456.  
  2457. Do not use the META element to define information that should be
  2458. associated with an existing HTML element.
  2459.  
  2460.  
  2461. 5. CONTENT
  2462.  
  2463. Used to supply a value for a named property.
  2464. It can contain more than one single information; it is possible to use
  2465. the Boolean operator (AND, OR) to insert a Boolean definition of the
  2466. field.
  2467.  
  2468. The AND operator will be represented by the SPACE (ASCII[32]) and the
  2469. OR operator by the COMMA (ASCII[44]).
  2470. The AND operator is processed before the OR operator. So a string like
  2471. this: "Red ball, White pen" means :"(Red AND ball) OR (White AND
  2472. pen)".
  2473.  
  2474. Example:
  2475.  
  2476.  <META HTTP-EQUIV= "Keywords" CONTENT= "Italy Products, Italy
  2477.  Tourism">
  2478.  
  2479. The spaces between a comma and a word or vice versa are ignored.
  2480.  
  2481. 6. Cataloguing an HTML document
  2482.  
  2483. These 'keywords' were specifically conceived to catalogue HTML
  2484. documents. This allows the software agents to index at best your own
  2485. document.
  2486.  
  2487. To do a preliminary indexing, it's important to use at least the HTTP-
  2488. EQUIV meta-tag "keywords".
  2489.  
  2490.                                    
  2491.                                Appendix
  2492.  
  2493.  
  2494.  
  2495.  
  2496. HTML Quick Reference
  2497.  
  2498.                                      
  2499. BASIC ELEMENTS                       
  2500. Document Type   <HTML></HTML>        (beginning and end
  2501.                                      of file)
  2502.                                      
  2503. Header          <HEAD></HEAD>        (descriptive
  2504.                                      information, such
  2505.                                      as title)
  2506.                                      
  2507. Title           <TITLE></TITLE>      (must be in header)
  2508.                                      
  2509. Body            <BODY></BODY>        (main document
  2510.                                      display)
  2511.                                      
  2512. STRUCTURAL                           
  2513. DEFINITION
  2514. Heading         <H?></H?>            (6 levels)
  2515.                                      
  2516. Align Heading   <H? ALIGN=           
  2517.                 LEFT|CENTER|RIGHT>
  2518.                 </H?>
  2519.                                      
  2520. Division        <DIV></DIV>          
  2521.                                      
  2522. Align Division  <DIV                 
  2523.                 ALIGN=LEFT|RIGHT|CE
  2524.                 NTER></DIV>
  2525.                                      
  2526. Block Quote     <BLOCKQUOTE>         (usually displayed
  2527.                 </BLOCKQUOTE>        as indented)
  2528.                                      
  2529. Emphasis        <EM></EM>            (usually displayed
  2530.                                      as italic)
  2531.                                      
  2532. Strong Emphasis <STRONG></STRONG>    (usually displayed
  2533.                                      as bold)
  2534.                                      
  2535. Citation        <CITE></CITE>        (usually italics)
  2536.                                      
  2537. Code            <CODE></CODE>        (for source code
  2538.                                      listings)
  2539.                                      
  2540. Sample Output   <SAMP></SAMP>        
  2541.                                      
  2542. Keyboard Input  <KBD></KBD>          
  2543.                                      
  2544. Variable        <VAR></VAR>          
  2545.                                      
  2546. Author's        <ADDRESS></ADDRESS>  
  2547. Address
  2548.                                      
  2549. Large Font Size <BIG></BIG>          
  2550.                                      
  2551. Small Font Size <SMALL></SMALL>      
  2552.                                      
  2553. PRESENTATION                         
  2554. FORMATTING
  2555.                                      
  2556. Bold            <B></B>              
  2557.                                      
  2558. Italic          <I></I>              
  2559.                                      
  2560. Underline       <U></U>              
  2561.                                      
  2562. Strikeout       <STRIKE></STRIKE>    
  2563.                                      
  2564. Strikeout       <S></S>              
  2565.                                      
  2566. Subscript       <SUB></SUB>          
  2567.                                      
  2568. Superscript     <SUP></SUP>          
  2569.                                      
  2570. Typewriter      <TT></TT>            (displays in a
  2571.                                      monospaced font)
  2572.                                      
  2573. Preformatted    <PRE></PRE>          (display text
  2574.                                      spacing as-is)
  2575. Width           <PRE WIDTH=?></PRE>  (in characters)
  2576.                                      
  2577. Center          <CENTER></CENTER>    (for both text and
  2578.                                      images)
  2579.                                      
  2580. Blinking        <BLINK></BLINK>      
  2581.                                      
  2582. Font Size       <FONT                (ranges from 1-7)
  2583.                 SIZE=?></FONT>
  2584.                                      
  2585. Change Font     <FONT SIZE="+|-Size?">
  2586.                 </FONT>
  2587.                                      
  2588. Base Font Size  <BASEFONT SIZE=?>    (from 1-7; default
  2589.                                      is 3)
  2590.                                      
  2591. Font Colour     <FONT                
  2592.                 COLOR="#$$$$$$">
  2593.                 </FONT>
  2594.                                      
  2595. Select Font     <FONT                
  2596.                 FACE="***"></FONT>
  2597.                                      
  2598. Multi-Column    <MULTICOL COLS=?>    
  2599. Text            </MULTICOL>
  2600. Column Gutter   <MULTICOL            (default is 10
  2601.                 GUTTER=?></MULTICOL  pixels)
  2602.                 >
  2603. Column Width    <MULTICOL WIDTH=?>   
  2604.                 </MULTICOL>
  2605.                                      
  2606. Spacer          <SPACER>             
  2607. Spacer Type     <SPACER              
  2608.                 TYPE=horizontal|
  2609.                 vertical|block>
  2610. Spacer Size     <SPACER SIZE=?>      
  2611. Spacer          <SPACER WIDTH=?      
  2612. Dimensions      HEIGHT=?>
  2613. Spacer          <SPACER              
  2614. Alignment       ALIGN=left|right|center>
  2615.                                      
  2616. Margins         <BODY LEFTMARGIN=?   
  2617.                 TOPMARGIN=?>
  2618.                                      
  2619. LINKS AND                            
  2620. GRAPHICS
  2621. Base URL        <BASE HREF="URL">    (must be specified
  2622.                 </A>                 in the header, if
  2623.                                      at all.)
  2624.                                      
  2625. Link Something  <A HREF="URL"></A>   
  2626.                                      
  2627. Link to Target  <A                   (if in another
  2628.                 HREF="URL#***"></A>  document)
  2629.                 <A HREF="#***"></A>  (if in current
  2630.                                      document)
  2631.                                      
  2632. Target Window   <A HREF="URL"        
  2633.                 TARGET="***|
  2634.                 |_blank|_self|
  2635.                 _parent|_top"></A>
  2636.                                      
  2637. Define Target   <A NAME="***"></A>   
  2638. in Document
  2639.                                      
  2640. Send mail       <A                   
  2641.                 HREF="mailto:recipient"> </A>
  2642.                                      
  2643. Link to ftp     <A HREF =            
  2644. server          "ftp://server"></A>
  2645. Download a file <A HREF =            
  2646.                 "ftp://server//file"> </A>
  2647.                                      
  2648. Link to news    <A HREF =            
  2649. server          "news://server>
  2650.                                      
  2651. Display Image   <IMG SRC="URL">      
  2652. Alignment       <IMG SRC="URL"       
  2653.                 ALIGN=TOP|BOTTOM|MI
  2654.                 DDLE|LEFT|RIGHT>
  2655. Alignment       <IMG SRC="URL"       
  2656.                 ALIGN=TEXTTOP|BSMID
  2657.                 DLE|BASELINE|ABSBOTTOM>
  2658. Alternate       <IMG SRC="URL"       (if image not
  2659.                 ALT="***">           displayed)
  2660. Margin around   <IMG SRC="URL"       (blank space in
  2661. image           HSPACE=? VSPACE=?>   pixels between
  2662.                                      image and text)
  2663.                                      
  2664. Imagemap        <IMG SRC="URL"       (requires a script)
  2665.                 ISMAP>
  2666.                                      
  2667. Client-Side     <IMG SRC="URL"       
  2668. Imagemap        USEMAP="URL">
  2669.                                      
  2670. Map Description <MAP                 
  2671.                 NAME="***"></MAP>
  2672.                                      
  2673. Map Sections    <AREA                
  2674.                 SHAPE="RECT|CIRCLE|
  2675.                 POLY" COORDS=",,,"
  2676.                 HREF="URL"|NOHREF>
  2677.                                      
  2678. Dimensions      <IMG SRC="URL"       
  2679.                 WIDTH=? HEIGHT=?>
  2680.                 (in pixels)
  2681.                                      
  2682. Border          <IMG SRC="URL"       (in pixels)
  2683.                 BORDER=?>
  2684.                                      
  2685. Runaround Space <IMG SRC="URL"       (in pixels)
  2686.                 HSPACE=? VSPACE=?>
  2687.                                      
  2688. Embed Object    <EMBED SRC="URL">    (insert object into
  2689.                                      page)
  2690. Object Size     <EMBED SRC="URL"     
  2691.                 WIDTH=? HEIGHT=?>
  2692.                                      
  2693. DIVIDERS                             
  2694. Paragraph       <P></P>              (closing tag often
  2695.                                      unnecessary)
  2696.                                      
  2697. Align Text      <P ALIGN=            
  2698.                 LEFT|CENTER|RIGHT>
  2699.                 </P>
  2700.                                      
  2701. Line Break      <BR>                 (a single carriage
  2702.                                      return)
  2703. Clear Textwrap  <BR                  
  2704.                 CLEAR=LEFT|RIGHT|ALL>
  2705.                                      
  2706. Horizontal Rule <HR>                 
  2707. Alignment       <HR                  
  2708.                 ALIGN=LEFT|RIGHT|CE
  2709.                 NTER>
  2710. Thickness       <HR SIZE=?>          (in pixels)
  2711. Width           <HR WIDTH=?>         (in pixels)
  2712. Width Percent   <HR WIDTH="%">       (as a percentage of
  2713.                                      page width)
  2714. Solid Line      <HR NOSHADE>         (without the 3D
  2715.                                      cutout look)
  2716.                                      
  2717. No Break        <NOBR></NOBR>        (prevents line
  2718.                                      breaks)
  2719.                                      
  2720. Word Break      <WBR>                (where to break a
  2721.                                      line if needed)
  2722.                                      
  2723. LISTS                                
  2724. Unordered List  <UL><LI></UL>        (<LI> before each
  2725.                                      list item)
  2726. Compact         <UL COMPACT></UL>    
  2727. Bullet Type     <UL TYPE=            (for the whole
  2728.                 DISC|CIRCLE|SQUARE>  list)
  2729.                 <LI TYPE=            (this &subsequent)
  2730.                 DISC|CIRCLE|SQUARE>
  2731.                                      
  2732. Ordered List    <OL><LI></OL>        (<LI> before each
  2733.                                      list item)
  2734. Compact         <OL COMPACT></OL>    
  2735. Numbering Type  <OL TYPE=A|a|I|i|1>  (for the whole
  2736.                                      list)
  2737.                 <LI TYPE=A|a|I|i|1>  (this &subsequent)
  2738. Starting Number <OL START=?>         (for the whole
  2739.                                      list)
  2740.                 <LI VALUE=?>         (this &subsequent)
  2741.                                      
  2742. Definition List <DL><DT><DD></DL>    (<DT>=term,
  2743.                                      <DD>=definition)
  2744. Compact         <DL COMPACT></DL>    
  2745.                                      
  2746. Menu List       <MENU><LI></MENU>    (<LI> before each
  2747.                                      list item)
  2748. Compact         <MENU                
  2749.                 COMPACT></MENU>
  2750.                                      
  2751. Directory List  <DIR><LI></DIR>      (<LI> before each
  2752.                                      list item)
  2753. Compact         <DIR COMPACT></DIR>  
  2754.                                      
  2755. BACKGROUNDS AND                      
  2756. COLOURS
  2757. Tiled           <BODY                
  2758. backkground     BACKGROUND="URL">
  2759. Static          <BODY                
  2760. background      BACKGROUND="URL"
  2761.                 BGPROPERTIES=FIXED>
  2762.                                      
  2763. Bkground Colour <BODY                (order is
  2764.                 BGCOLOR="#$$$$$$">   red/green/blue)
  2765.                                      
  2766. Text Colour     <BODY                
  2767.                 TEXT="#$$$$$$">
  2768.                                      
  2769.  Link Colour    <BODY                
  2770.                 LINK="#$$$$$$">
  2771.                                      
  2772. Visited Link    <BODY                
  2773. Colour          VLINK="#$$$$$$">
  2774.                                      
  2775. Active Link     <BODY                
  2776. Colour          ALINK="#$$$$$$">
  2777.                                      
  2778. FORMS                                
  2779. Define Form     <FORM ACTION="URL"   
  2780.                 METHOD=GET|POST>
  2781.                 </FORM>
  2782.                                      
  2783. File Upload     <FORM                
  2784.                 ENCTYPE="multipart/
  2785.                 form-data"> </FORM>
  2786.                                      
  2787. Input Field     <INPUT               
  2788.                 TYPE="TEXT|PASSWORD
  2789.                 |CHECKBOX|RADIO|
  2790.                 IMAGE|HIDDEN|SUBMIT
  2791.                 |RESET">
  2792.                                      
  2793. Field Name      <INPUT NAME="***">   
  2794.                                      
  2795. Field Value     <INPUT VALUE="***">  
  2796.                                      
  2797. Checked?        <INPUT CHECKED>      (checkboxes and
  2798.                                      radio boxes)
  2799.                                      
  2800. Field Size      <INPUT SIZE=?>       (in characters)
  2801.                                      
  2802. Max Length      <INPUT MAXLENGTH=?>  (in characters)
  2803.                                      
  2804. Selection List  <SELECT></SELECT>    
  2805.                                      
  2806. Name of List    <SELECT              
  2807.                 NAME="***"></SELECT
  2808.                 >
  2809.                                      
  2810. # of Options    <SELECT              
  2811.                 SIZE=?></SELECT>
  2812.                                      
  2813. Multiple Choice <SELECT MULTIPLE>    (can select more
  2814.                                      than one)
  2815.                                      
  2816. Option          <OPTION>             (items that can be
  2817.                                      selected)
  2818.                                      
  2819. Default Option  <OPTION SELECTED>    
  2820.                                      
  2821. Input Box Size  <TEXTAREA ROWS=?     
  2822.                 COLS=?></TEXTAREA>
  2823.                                      
  2824. Name of Box     <TEXTAREA            
  2825.                 NAME="***"></TEXTAREA>
  2826.                                      
  2827. Wrap Text       <TEXTAREA            
  2828.                 WRAP=OFF|VIRTUAL|PHYSICAL>
  2829.                 </TEXTAREA>
  2830.                                      
  2831. TABLES                               
  2832.                                      
  2833.                                      
  2834. Define Table    <TABLE></TABLE>      
  2835.                                      
  2836. Table Border    <TABLE               
  2837.                 BORDER=?></TABLE>
  2838.                                      
  2839. Cell Spacing    <TABLE               (space between
  2840.                 CELLSPACING=?>       table cells)
  2841.                                      
  2842. Cell Padding    <TABLE               (space between cell
  2843.                 CELLPADDING=?>       wall and enclosed
  2844.                                      data)
  2845.                                      
  2846. Desired Width   <TABLE WIDTH=?>      (in pixels)
  2847.                                      
  2848. Width Percent   <TABLE WIDTH="%">    (percentage of
  2849.                                      page)
  2850.                                      
  2851. Table Row       <TR></TR>            
  2852. Alignment       <TR                  
  2853.                 ALIGN=LEFT|RIGHT|
  2854.                 CENTER|MIDDLE|BOTTOM
  2855.                 VALIGN=TOP|BOTTOM|MIDDLE>
  2856.                                      
  2857. Table Cell      <TD></TD>            (must appear within
  2858.                                      table rows)
  2859. Alignment       <TD                  
  2860.                 ALIGN=LEFT|RIGHT|
  2861.                 CENTER|MIDDLE|BOTTOM
  2862.                 VALIGN=TOP|BOTTOM|MIDDLE>
  2863. No linebreaks   <TD NOWRAP>          
  2864. Columns to Span <TD COLSPAN=?>       
  2865. Rows to Span    <TD ROWSPAN=?>       
  2866. Desired Width   <TD WIDTH=?>         (in pixels)
  2867. Width Percent   <TD WIDTH="%">       (percentage of
  2868.                                      table)
  2869. Cell Colour     <TD                  
  2870.                 BGCOLOR="#$$$$$$">
  2871.                                      
  2872. Table Header    <TH></TH>            (same as data,
  2873.                                      except bold and
  2874.                                      centered)
  2875. Alignment       <TH                  
  2876.                 ALIGN=LEFT|RIGHT|
  2877.                 CENTER|MIDDLE|BOTTOM
  2878.                 VALIGN=TOP|BOTTOM|MIDDLE>
  2879. No Linebreaks   <TH NOWRAP>          
  2880. Columns to Span <TH COLSPAN=?>       
  2881. Rows to Span    <TH ROWSPAN=?>       
  2882. Desired Width   <TH WIDTH=?>         (in pixels)
  2883. Width Percent   <TH WIDTH="%">       (percentage of
  2884.                                      table)
  2885. Cell Colour     <TH                  
  2886.                 BGCOLOR="#$$$$$$">
  2887.                                      
  2888. Table Caption   <CAPTION></CAPTION>  
  2889. Alignment       <CAPTION             (above/below table)
  2890.                 ALIGN=TOP|BOTTOM>
  2891.                                      
  2892. FRAMES                               
  2893. Frame Document  <FRAMESET>           (instead of <BODY>)
  2894.                 </FRAMESET>
  2895.                                      
  2896. Row Heights     <FRAMESET            (pixels or %)
  2897.                 ROWS=,,,></FRAMESET>
  2898. Row Heights     <FRAMESET ROWS=*>    (* = relative size)
  2899.                 </FRAMESET>
  2900.                                      
  2901. Column Widths   <FRAMESET            (pixels or %)
  2902.                 COLS=,,,>
  2903.                 </FRAMESET>
  2904. Column Widths   <FRAMESET            (* = relative size)
  2905.                 COLS=*></FRAMESET>
  2906.                                      
  2907. Border Width    <FRAMESET BORDER=?>  
  2908.                                      
  2909. Borders         <FRAMESET            
  2910.                 FRAMEBORDER="yes|no">
  2911.                                      
  2912. Border Colour   <FRAMESET            
  2913.                 BORDERCOLOR="#$$$$$$">
  2914.                                      
  2915. Define Frame    <FRAME>              (contents of an
  2916.                                      individual frame)
  2917.                                      
  2918. Display         <FRAME SRC="URL">    
  2919. Document
  2920.                                      
  2921. Frame Name      <FRAME NAME="***">   
  2922.                                      
  2923. Margin Width    <FRAME               (left and right
  2924.                 MARGINWIDTH=?>       margins)
  2925.                                      
  2926. Margin Height   <FRAME               (top and bottom
  2927.                 MARGINHEIGHT=?>      margins)
  2928.                                      
  2929. Scrollbar?      <FRAME               
  2930.                 SCROLLING="YES|NO|AUTO">
  2931.                                      
  2932. Not Resizable   <FRAME NORESIZE>     
  2933.                                      
  2934. Borders         <FRAME               
  2935.                 FRAMEBORDER="yes|no">
  2936.                                      
  2937. Border Colour   <FRAME               
  2938.                 BORDERCOLOR="#$$$$$$">
  2939.                                      
  2940. Unframed        <NOFRAMES></NOFRAMES>(for non-frames
  2941. Content                               browsers)
  2942.                                      
  2943. MISCELLANEOUS                        
  2944. Comment         <!-- *** -->         (not displayed by
  2945.                                      the browser)
  2946.                                      
  2947. HTML 3.2        <!DOCTYPE HTML       
  2948. Prologue        PUBLIC "-//W3C//DTD
  2949.                 HTML 3.2//EN">
  2950.                                      
  2951. Searchable      <ISINDEX>            (indicates a
  2952.                                      searchable index)
  2953.                                      
  2954. Prompt          <ISINDEX             (text to prompt
  2955.                 PROMPT="***">        input)
  2956.                                      
  2957. Send Search     <A                   (use a real
  2958.                 HREF="URL?***"></a>  question mark)
  2959.                                      
  2960. URL of This     <BASE HREF="URL">    (must be in header)
  2961. File
  2962.                                      
  2963. Base Window     <BASE TARGET="***">  (must be in header)
  2964. Name
  2965.                                      
  2966. Meta            <META>               (must be in header)
  2967. Information
  2968.                                      
  2969. Automatic       <META HTTP-          (replace ? with
  2970. Navigation      EQUIV="REFRESH"      number of seconds
  2971.                 CONTENT="?;          to wait, and URL
  2972.                 URL=URL">            with target URL.
  2973.                                      The browser then
  2974.                                      automatically
  2975.                                      navigates to URL)
  2976. Provide         <META                (supply keywords
  2977. Keywords To WWW NAME="keywords"      separated by a
  2978. Agents          CONTENT="***">       comma)
  2979. Provide Author  <META NAME="AUTHOR"  (replace *** with
  2980. Name to WWW     CONTENT="***">       your name)
  2981. Agents
  2982. Provide WWW     <META NAME           (replace *** with a
  2983. site            ="DESCRIPTION"       description of the
  2984. description to  CONTENT="***">       site)
  2985. WWW Agents
  2986.                                      
  2987. Marquee         <MARQUEE             (only one line per
  2988. scrolling right BGCOLOR="#$$$$$$">   Marquee tag-pair)
  2989. to left         </MARQUEE>
  2990. continuously
  2991. Marquee         <MARQUEE             
  2992. scrolling left  BGCOLOR="#$$$$$$">
  2993. to right        DIRECTION=RIGHT
  2994. continuously    </MARQUEE>
  2995. Marquee         <MARQUEE             
  2996. scrolling text  BGCOLOR="#$$$$$$">
  2997. on from right   BEHAVIOUR=SLIDE
  2998. to left         </MARQUEE>
  2999. Marquee         <MARQUEE             
  3000. scrolling right BGCOLOR="#$$$$$$">
  3001. to left and     BEHAVIOUR=ALTERNATE
  3002. then back left  </MARQUEE>
  3003. to right
  3004. continuously
  3005.                                      
  3006. Sound           <BGSOUND             (played in the
  3007.                 SRC="filename">      background)
  3008. Play            <BGSOUND             
  3009. continuously    SRC="filename"
  3010.                 loop=infinite>
  3011.  
  3012. Entity Reference Table
  3013.  
  3014.  
  3015. The following characters can not be displayed by most HTML viewers,
  3016. and must be included in a document using an entity reference or
  3017. numeric coding instead. Please be aware that unlike HTML tags,
  3018. entities are case sensitive.
  3019.  
  3020.  
  3021.           ENTITY    NUMERIC
  3022. CHARACTER REFERENCE CHAR REF     CHARACTER DESCRIPTION
  3023.  
  3024.      "    "    "          Quotation mark
  3025.      &    &     &          Ampersand
  3026.      <    <      <          Less than
  3027.      >    >      >          Greater than
  3028. SPACE                     Non-breaking Space
  3029.  
  3030. For example, to add a less-than sign to a document for display, use
  3031. <
  3032.  
  3033. Colour Codes
  3034. The following table lists the names of various colours, and
  3035. illustrates the rgb triplet required to select that colour in Netscape
  3036. Navigator and Internet Explorer.
  3037.  
  3038.                              
  3039. Colour Name                  Triplet
  3040. White                        #FFFFFF
  3041. Red                          #FF0000
  3042. Green                        #00FF00
  3043. Blue                         #0000FF
  3044. Magenta                      #FF00FF
  3045. Cyan                         #00FFFF
  3046. Yellow                       #FFFF00
  3047. Black                        #000000
  3048. Aquamarine                   #70DB93
  3049. Baker's Chocolate            #5C3317
  3050. Blue Violet                  #9F5F9F
  3051. Brass                        #B5A642
  3052. Bright Gold                  #D9D919
  3053. Brown                        #A62A2A
  3054. Bronze                       #8C7853
  3055. Bronze II                    #A67D3D
  3056. Cadet Blue                   #5F9F9F
  3057. Cool Copper                  #D98719
  3058. Copper                       #B87333
  3059. Coral                        #FF7F00
  3060. Corn Flower Blue             #42426F
  3061. Dark Brown                   #5C4033
  3062. Dark Green                   #2F4F2F
  3063. Dark Green Copper            #4A766E
  3064. Dark Olive Green             #4F4F2F
  3065. Dark Orchid                  #9932CD
  3066. Dark Purple                  #871F78
  3067. Dark Slate Blue              #6B238E
  3068. Dark Slate Grey              #2F4F4F
  3069. Dark Tan                     #97694F
  3070. Dark Turquoise               #7093DB
  3071. Dark Wood                    #855E42
  3072. Dim Grey                     #545454
  3073. Dusty Rose                   #856363
  3074. Feldspar                     #D19275
  3075. Firebrick                    #8E2323
  3076. Forest Green                 #238E23
  3077. Gold                         #CD7F32
  3078. Goldenrod                    #DBDB70
  3079. Grey                         #C0C0C0
  3080. Green Copper                 #527F76
  3081. Green Yellow                 #93DB70
  3082. Hunter Green                 #215E21
  3083. Indian Red                   #4E2F2F
  3084. Khaki                        #9F9F5F
  3085. Light Blue                   #C0D9D9
  3086. Light Grey                   #A8A8A8
  3087. Light Steel Blue             #8F8FBD
  3088. Light Wood                   #E9C2A6
  3089. Lime Green                   #32CD32
  3090. Mandarian Orange             #E47833
  3091. Maroon                       #8E236B
  3092. Medium Aquamarine            #32CD99
  3093. Medium Blue                  #3232CD
  3094. Medium Forest Green          #6B8E23
  3095. Medium Goldenrod             #EAEAAE
  3096. Medium Orchid                #9370DB
  3097. Medium Sea Green             #426F42
  3098. Medium Slate Blue            #7F00FF
  3099. Medium Spring Green          #7FFF00
  3100. Medium Turquoise             #70DBDB
  3101. Medium Violet Red            #DB7093
  3102. Medium Wood                  #A68064
  3103. Midnight Blue                #2F2F4F
  3104. Navy Blue                    #23238E
  3105. Neon Blue                    #4D4DFF
  3106. Neon Pink                    #FF6EC7
  3107. New Midnight Blue            #00009C
  3108. New Tan                      #EBC79E
  3109. Old Gold                     #CFB53B
  3110. Orange                       #FF7F00
  3111. Orange Red                   #FF2400
  3112. Orchid                       #DB70DB
  3113. Pale Green                   #8FBC8F
  3114. Pink                         #BC8F8F
  3115. Plum                         #EAADEA
  3116. Quartz                       #D9D9F3
  3117. Rich Blue                    #5959AB
  3118. Salmon                       #6F4242
  3119. Scarlet                      #8C1717
  3120. Sea Green                    #238E68
  3121. Semi-Sweet Chocolate         #6B4226
  3122. Sienna                       #8E6B23
  3123. Silver                       #E6E8FA
  3124. Sky Blue                     #3299CC
  3125. Slate Blue                   #007FFF
  3126. Spicy Pink                   #FF1CAE
  3127. Spring Green                 #00FF7F
  3128. Steel Blue                   #236B8E
  3129. Summer Sky                   #38B0DE
  3130. Tan                          #DB9370
  3131. Thistle                      #D8BFD8
  3132. Turquoise                    #ADEAEA
  3133. Very Dark Brown              #5C4033
  3134. Very Light Grey              #CDCDCD
  3135. Violet                       #4F2F4F
  3136. Violet Red                   #CC3299
  3137. Wheat                        #D8D8BF
  3138. Yellow Green                 #99CC32
  3139.  
  3140.  
  3141. Glossary
  3142.  
  3143. absolute URI
  3144.  
  3145. a URI in absolute form; for example, as per URL
  3146.  
  3147. anchor
  3148.  
  3149. one of two ends of a hyperlink; typically, a phrase marked as an A
  3150. element.
  3151.  
  3152. base URI
  3153.  
  3154. an absolute URI used in combination with a relative URI to determine
  3155. another absolute URI.
  3156.  
  3157. character
  3158.  
  3159. An atom of information, for example a letter or a digit. Graphic
  3160. characters have associated glyphs, whereas control characters have
  3161. associated processing semantics.
  3162.  
  3163. character encoding scheme
  3164.  
  3165. A function whose domain is the set of sequences of octets, and whose
  3166. range is the set of sequences of characters from a character
  3167. repertoire; that is, a sequence of octets and a character encoding
  3168. scheme determines a sequence of characters.
  3169.  
  3170. character repertoire
  3171.  
  3172. A finite set of characters; e.g. the range of a coded character set.
  3173.  
  3174. code position
  3175.  
  3176. An integer. A coded character set and a code position from its domain
  3177. determine a character.
  3178.  
  3179. coded character set
  3180.  
  3181. A function whose domain is a subset of the integers and whose range is
  3182. a character repertoire. That is, for some set of integers (usually of
  3183. the form {0, 1, 2, ..., N} ), a coded character set and an integer in
  3184. that set determine a character. Conversely, a character and a coded
  3185. character set determine the character's code position (or, in rare
  3186. cases, a few code positions).
  3187.  
  3188. data character
  3189.  
  3190. Characters other than markup, which make up the content of elements.
  3191.  
  3192. document character set
  3193.  
  3194. a coded character set whose range includes all characters used in a
  3195. document. Every SGML document has exactly one document character set.
  3196. Numeric character references are resolved via the document character
  3197. set.
  3198.  
  3199. DTD
  3200.  
  3201. document type definition. Rules that apply SGML to the markup of
  3202. documents of a particular type, including a set of element and entity
  3203. declarations.
  3204.  
  3205. element
  3206.  
  3207. A component of the hierarchical structure defined by a document type
  3208. definition; it is identified in a document instance by descriptive
  3209. markup, usually a start-tag and end-tag.
  3210.  
  3211. end-tag
  3212.  
  3213. Descriptive markup that identifies the end of an element.
  3214.  
  3215. entity
  3216.  
  3217. data with an associated notation or interpretation; for example, a
  3218. sequence of octets associated with an Internet Media Type.
  3219.  
  3220. fragment identifier
  3221.  
  3222. the portion of an HREF attribute value following the `#' character
  3223. which modifies the presentation of the destination of a hyperlink to a
  3224. position within the specified document.
  3225.  
  3226. form data set
  3227.  
  3228. a sequence of name/value pairs; the names are given by an HTML
  3229. document and the values are given by a user.
  3230.  
  3231. hyperlink
  3232.  
  3233. a relationship between two anchors, called the head and the tail. The
  3234. link goes from the tail to the head. The head and tail are also known
  3235. as destination and source, respectively.
  3236.  
  3237. markup
  3238.  
  3239. Syntactically delimited characters added to the data of a document to
  3240. represent its structure. There are four different kinds of markup:
  3241. descriptive markup (tags), references, markup declarations, and
  3242. processing instructions.
  3243.  
  3244. media type
  3245.  
  3246. an Internet Media Type, as per IMEDIA.
  3247.  
  3248. message entity
  3249.  
  3250. a head and body. The head is a collection of name/value fields, and
  3251. the body is a sequence of octets. The head defines the content type
  3252. and content transfer encoding of the body.
  3253.  
  3254. numeric character reference
  3255.  
  3256. markup that refers to a character by its code position in the document
  3257. character set.
  3258.  
  3259. SGML document
  3260.  
  3261. A sequence of characters organized physically as a set of entities and
  3262. logically into a hierarchy of elements. An SGML document consists of
  3263. data characters and markup; the markup describes the structure of the
  3264. information and an instance of that structure.
  3265.  
  3266. start-tag
  3267.  
  3268. Descriptive markup that identifies the start of an element and
  3269. specifies its generic identifier and attributes.
  3270.  
  3271. syntax-reference character set
  3272.  
  3273. A coded character set whose range includes all characters used for
  3274. markup; e.g. name characters and delimiter characters.
  3275.  
  3276. tag
  3277.  
  3278. Markup that delimits an element. A tag includes a name which refers to
  3279. an element declaration in the DTD, and may include attributes.
  3280.  
  3281. text entity
  3282.  
  3283. A finite sequence of characters. A text entity typically takes the
  3284. form of a sequence of octets with some associated character encoding
  3285. scheme, transmitted over the network or stored in a file.
  3286.  
  3287. typical
  3288.  
  3289. Typical processing is described for many elements. This is not a
  3290. mandatory part of the specification but is given as guidance for
  3291. designers and to help explain the uses for which the elements were
  3292. intended.
  3293.  
  3294. URI
  3295.  
  3296. A Uniform Resource Identifier is a formatted string that serves as an
  3297. identifier for a resource, typically on the Internet. URIs are used in
  3298. HTML to identify the anchors of hyperlinks. URIs in common practice
  3299. include Uniform Resource Locators (URLs) and Relative URLs.
  3300.  
  3301. HTML viewer
  3302.  
  3303. A component of a distributed system that presents an interface and
  3304. processes requests on behalf of a user; for example, a www browser or
  3305. a mail HTML viewer.
  3306.  
  3307. WWW
  3308.  
  3309. The World-Wide Web is a hypertext-based, distributed information
  3310. system created by researchers at CERN in Switzerland.
  3311. http://www.w3.org/
  3312.  
  3313.  
  3314. HTML Coded Character Set
  3315.  
  3316.  
  3317. REFERENCE           DESCRIPTION
  3318.  
  3319. � -        Unused
  3320.                Horizontal tab
  3321.                Line feed
  3322.  -         Unused
  3323.                Carriage Return
  3324.  -        Unused
  3325.                Space
  3326. !               Exclamation mark
  3327. "               Quotation mark
  3328. #               Number sign
  3329. $               Dollar sign
  3330. %               Percent sign
  3331. &               Ampersand
  3332. '               Apostrophe
  3333. (               Left parenthesis
  3334. )               Right parenthesis
  3335. *               Asterisk
  3336. +               Plus sign
  3337. ,               Comma
  3338. -               Hyphen
  3339. .               Period (fullstop)
  3340. /               Solidus (slash)
  3341. 0 - 9       Digits 0-9
  3342. :               Colon
  3343. ;               Semi-colon
  3344. <               Less than
  3345. =               Equals sign
  3346. >               Greater than
  3347. ?               Question mark
  3348. @               Commercial at
  3349. A - Z       Letters A-Z
  3350. [               Left square bracket
  3351. \               Reverse solidus (backslash)
  3352. ]               Right square bracket
  3353. ^               Caret
  3354. _               Horizontal bar (underscore)
  3355. `               Acute accent
  3356. a - z      Letters a-z
  3357. {              Left curly brace
  3358. |              Vertical bar
  3359. }              Right curly brace
  3360. ~              Tilde
  3361.  - Ÿ     Unused
  3362.                Non-breaking Space
  3363. ¡              Inverted exclamation
  3364. ¢              Cent sign
  3365. £              Pound sterling
  3366. ¤              General currency sign
  3367. ¥              Yen sign
  3368. ¦              Broken vertical bar
  3369. §              Section sign
  3370. ¨              Umlaut (dieresis)
  3371. ©              Copyright
  3372. ª              Feminine ordinal
  3373. «              Left angle quote, guillemotleft
  3374. ¬              Not sign
  3375. ­              Soft hyphen
  3376. ®              Registered trademark
  3377. ¯              Macron accent
  3378. °              Degree sign
  3379. ±              Plus or minus
  3380. ²              Superscript two
  3381. ³              Superscript three
  3382. ´              Acute accent
  3383. µ              Micro sign
  3384. ¶              Paragraph sign
  3385. ·              Middle dot
  3386. ¸              Cedilla
  3387. ¹              Superscript one
  3388. º              Masculine ordinal
  3389. »              Right angle quote, guillemotright
  3390. ¼              Fraction one-fourth
  3391. ½              Fraction one-half
  3392. ¾              Fraction three-fourths
  3393. ¿              Inverted question mark
  3394. À              Capital A, grave accent
  3395. Á              Capital A, acute accent
  3396.               Capital A, circumflex accent
  3397. à             Capital A, tilde
  3398. Ä              Capital A, dieresis or umlaut mark
  3399. Å              Capital A, ring
  3400. Æ              Capital AE dipthong (ligature)
  3401. Ç              Capital C, cedilla
  3402. È              Capital E, grave accent
  3403. É              Capital E, acute accent
  3404. Ê              Capital E, circumflex accent
  3405. Ë              Capital E, dieresis or umlaut mark
  3406. Ì              Capital I, grave accent
  3407. Í              Capital I, acute accent
  3408. Π             Capital I, circumflex accent
  3409. Ï              Capital I, dieresis or umlaut mark
  3410. Р             Capital Eth, Icelandic
  3411. Ñ              Capital N, tilde
  3412. Ò              Capital O, grave accent
  3413. Ó              Capital O, acute accent
  3414. Ô              Capital O, circumflex accent
  3415. Õ              Capital O, tilde
  3416. Ö              Capital O, dieresis or umlaut mark
  3417. ×              Multiply sign
  3418. Ø              Capital O, slash
  3419. Ù              Capital U, grave accent
  3420. Ú              Capital U, acute accent
  3421. Û              Capital U, circumflex accent
  3422. Ü              Capital U, dieresis or umlaut mark
  3423. Ý              Capital Y, acute accent
  3424. Þ              Capital THORN, Icelandic
  3425. ß              Small sharp s, German (sz ligature)
  3426. à              Small a, grave accent
  3427. á              Small a, acute accent
  3428. â              Small a, circumflex accent
  3429. ã              Small a, tilde
  3430. ä              Small a, dieresis or umlaut mark
  3431. å              Small a, ring
  3432. æ              Small ae dipthong (ligature)
  3433. ç              Small c, cedilla
  3434. è              Small e, grave accent
  3435. é              Small e, acute accent
  3436. ê              Small e, circumflex accent
  3437. ë              Small e, dieresis or umlaut mark
  3438. ì              Small i, grave accent
  3439. í              Small i, acute accent
  3440. î              Small i, circumflex accent
  3441. ï              Small i, dieresis or umlaut mark
  3442. ð              Small eth, Icelandic
  3443. ñ              Small n, tilde
  3444. ò              Small o, grave accent
  3445. ó              Small o, acute a9ccent
  3446. ô              Small o, circumflex accent
  3447. õ              Small o, tilde
  3448. ö              Small o, dieresis or umlaut mark
  3449. ÷              Division sign
  3450. ø              Small o, slash
  3451. ù              Small u, grave accent
  3452. ú              Small u, acute accent
  3453. û              Small u, circumflex accent
  3454. ü              Small u, dieresis or umlaut mark
  3455. ý              Small y, acute accent
  3456. þ              Small thorn, Icelandic
  3457. ÿ              Small y, dieresis or umlaut mark
  3458.  
  3459.                                    
  3460.                            Acknowledgements
  3461.  
  3462.  
  3463.  
  3464. This document owes much of its information to the following public
  3465. domain sources:
  3466.  
  3467. The HTML specification by Tim Berners-Lee and Daniel W. Connolly
  3468. Barebones guide to HTML by  Kevin Werbach.
  3469. Extensions to HTML published by Netscape Communications Corporation
  3470. HTML Quick reference by Michael Grobe
  3471. NCSA HTML Primer
  3472. Netscape Colour Index
  3473. The META Tag of HTML by  Davide Musella, National Research Council
  3474. HTML Reference Library By Stephen Le Hunte
  3475.